From 1d68921e2e0e9bccbe7194e61e223050e34e8e57 Mon Sep 17 00:00:00 2001 From: Matthew Christopher Date: Fri, 5 Jan 2024 15:18:54 -0800 Subject: [PATCH] Add support for 2023-06-01-preview Postgres API This API enables support for Postgres 15 and 16. This fixes #3627. --- docs/hugo/content/reference/_index.md | 11 + .../reference/dbforpostgresql/_index.md | 11 + .../flexible_server_extension_types_gen.go | 6 +- ...rvers_configuration_extension_types_gen.go | 6 +- ...le_servers_database_extension_types_gen.go | 6 +- ...rvers_firewall_rule_extension_types_gen.go | 6 +- .../v1api20230601preview/doc.go | 10 + .../flexible_server_spec_arm_types_gen.go | 239 + ...flexible_server_spec_arm_types_gen_test.go | 916 ++ .../flexible_server_status_arm_types_gen.go | 327 + ...exible_server_status_arm_types_gen_test.go | 1091 +++ .../flexible_server_types_gen.go | 5835 ++++++++++++ .../flexible_server_types_gen_test.go | 3370 +++++++ ...ervers_configuration_spec_arm_types_gen.go | 39 + ...s_configuration_spec_arm_types_gen_test.go | 155 + ...vers_configuration_status_arm_types_gen.go | 58 + ...configuration_status_arm_types_gen_test.go | 171 + ...lexible_servers_configuration_types_gen.go | 976 ++ ...le_servers_configuration_types_gen_test.go | 406 + ...ble_servers_database_spec_arm_types_gen.go | 39 + ...ervers_database_spec_arm_types_gen_test.go | 155 + ...e_servers_database_status_arm_types_gen.go | 31 + ...vers_database_status_arm_types_gen_test.go | 158 + .../flexible_servers_database_types_gen.go | 788 ++ ...lexible_servers_database_types_gen_test.go | 393 + ...ervers_firewall_rule_spec_arm_types_gen.go | 39 + ...s_firewall_rule_spec_arm_types_gen_test.go | 155 + ...vers_firewall_rule_status_arm_types_gen.go | 31 + ...firewall_rule_status_arm_types_gen_test.go | 158 + ...lexible_servers_firewall_rule_types_gen.go | 790 ++ ...le_servers_firewall_rule_types_gen_test.go | 393 + .../groupversion_info_gen.go | 32 + .../storage/flexible_server_types_gen.go | 3758 ++++++++ .../storage/flexible_server_types_gen_test.go | 3147 +++++++ ...lexible_servers_configuration_types_gen.go | 667 ++ ...le_servers_configuration_types_gen_test.go | 402 + .../flexible_servers_database_types_gen.go | 575 ++ ...lexible_servers_database_types_gen_test.go | 393 + ...lexible_servers_firewall_rule_types_gen.go | 575 ++ ...le_servers_firewall_rule_types_gen_test.go | 393 + .../storage/groupversion_info_gen.go | 32 + .../storage/structure.txt | 297 + .../storage/zz_generated.deepcopy.go | 1921 ++++ .../v1api20230601preview/structure.txt | 803 ++ .../zz_generated.deepcopy.go | 3139 +++++++ v2/api/dbforpostgresql/versions_matrix.md | 159 +- v2/azure-arm.yaml | 35 + .../controllers/controller_resources_gen.go | 16 + ...eserver_crud_v1api20230601preview_test.go} | 24 +- ...L_FlexibleServer_20220120preview_CRUD.yaml | 1746 ---- ...L_FlexibleServer_20230601Preview_CRUD.yaml | 8283 +++++++++++++++++ ...pi20230601preview_CreationAndDeletion.yaml | 1255 +++ .../reconcilers/arm/error_classifier.go | 1 + .../v1api20230601preview_flexibleserver.yaml | 19 + ...1preview_flexibleserversconfiguration.yaml | 11 + ...230601preview_flexibleserversdatabase.yaml | 9 + ...01preview_flexibleserversfirewallrule.yaml | 10 + 57 files changed, 42639 insertions(+), 1832 deletions(-) create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/doc.go create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/flexible_server_spec_arm_types_gen.go create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/flexible_server_spec_arm_types_gen_test.go create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/flexible_server_status_arm_types_gen.go create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/flexible_server_status_arm_types_gen_test.go create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/flexible_server_types_gen.go create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/flexible_server_types_gen_test.go create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_configuration_spec_arm_types_gen.go create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_configuration_spec_arm_types_gen_test.go create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_configuration_status_arm_types_gen.go create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_configuration_status_arm_types_gen_test.go create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_configuration_types_gen.go create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_configuration_types_gen_test.go create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_database_spec_arm_types_gen.go create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_database_spec_arm_types_gen_test.go create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_database_status_arm_types_gen.go create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_database_status_arm_types_gen_test.go create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_database_types_gen.go create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_database_types_gen_test.go create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_firewall_rule_spec_arm_types_gen.go create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_firewall_rule_spec_arm_types_gen_test.go create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_firewall_rule_status_arm_types_gen.go create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_firewall_rule_status_arm_types_gen_test.go create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_firewall_rule_types_gen.go create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_firewall_rule_types_gen_test.go create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/groupversion_info_gen.go create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/storage/flexible_server_types_gen.go create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/storage/flexible_server_types_gen_test.go create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/storage/flexible_servers_configuration_types_gen.go create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/storage/flexible_servers_configuration_types_gen_test.go create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/storage/flexible_servers_database_types_gen.go create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/storage/flexible_servers_database_types_gen_test.go create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/storage/flexible_servers_firewall_rule_types_gen.go create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/storage/flexible_servers_firewall_rule_types_gen_test.go create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/storage/groupversion_info_gen.go create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/storage/structure.txt create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/storage/zz_generated.deepcopy.go create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/structure.txt create mode 100644 v2/api/dbforpostgresql/v1api20230601preview/zz_generated.deepcopy.go rename v2/internal/controllers/{dbforpostgresql_flexibleserver_crud_v1api20220120preview_test.go => dbforpostgresql_flexibleserver_crud_v1api20230601preview_test.go} (90%) delete mode 100644 v2/internal/controllers/recordings/Test_DBForPostgreSQL_FlexibleServer_20220120preview_CRUD.yaml create mode 100644 v2/internal/controllers/recordings/Test_DBForPostgreSQL_FlexibleServer_20230601Preview_CRUD.yaml create mode 100644 v2/internal/controllers/recordings/Test_Samples_CreationAndDeletion/Test_Dbforpostgresql_v1api20230601preview_CreationAndDeletion.yaml create mode 100644 v2/samples/dbforpostgresql/v1api20230601preview/v1api20230601preview_flexibleserver.yaml create mode 100644 v2/samples/dbforpostgresql/v1api20230601preview/v1api20230601preview_flexibleserversconfiguration.yaml create mode 100644 v2/samples/dbforpostgresql/v1api20230601preview/v1api20230601preview_flexibleserversdatabase.yaml create mode 100644 v2/samples/dbforpostgresql/v1api20230601preview/v1api20230601preview_flexibleserversfirewallrule.yaml diff --git a/docs/hugo/content/reference/_index.md b/docs/hugo/content/reference/_index.md index 331d2be419a..f43eb2e4b34 100644 --- a/docs/hugo/content/reference/_index.md +++ b/docs/hugo/content/reference/_index.md @@ -247,6 +247,17 @@ These resource(s) are available for use in the current release of ASO. Different To install the CRDs for these resources, your ASO configuration must include `dbforpostgresql.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 | +|------------------------------|--------------------|----------------------|----------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| FlexibleServer | 2023-06-01-preview | v1api20230601preview | v2.6.0 | [View](https://github.com/Azure/azure-service-operator/tree/main/v2/samples/dbforpostgresql/v1api20230601preview/v1api20230601preview_flexibleserver.yaml) | +| FlexibleServersConfiguration | 2023-06-01-preview | v1api20230601preview | v2.6.0 | [View](https://github.com/Azure/azure-service-operator/tree/main/v2/samples/dbforpostgresql/v1api20230601preview/v1api20230601preview_flexibleserversconfiguration.yaml) | +| FlexibleServersDatabase | 2023-06-01-preview | v1api20230601preview | v2.6.0 | [View](https://github.com/Azure/azure-service-operator/tree/main/v2/samples/dbforpostgresql/v1api20230601preview/v1api20230601preview_flexibleserversdatabase.yaml) | +| FlexibleServersFirewallRule | 2023-06-01-preview | v1api20230601preview | v2.6.0 | [View](https://github.com/Azure/azure-service-operator/tree/main/v2/samples/dbforpostgresql/v1api20230601preview/v1api20230601preview_flexibleserversfirewallrule.yaml) | + ### Released These resource(s) are available for use in the current release of ASO. Different versions of a given resource reflect different versions of the Azure ARM API. diff --git a/docs/hugo/content/reference/dbforpostgresql/_index.md b/docs/hugo/content/reference/dbforpostgresql/_index.md index ae77fcaf680..b12142b675e 100644 --- a/docs/hugo/content/reference/dbforpostgresql/_index.md +++ b/docs/hugo/content/reference/dbforpostgresql/_index.md @@ -5,6 +5,17 @@ no_list: true --- To install the CRDs for these resources, your ASO configuration must include `dbforpostgresql.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 | +|------------------------------|--------------------|----------------------|----------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| FlexibleServer | 2023-06-01-preview | v1api20230601preview | v2.6.0 | [View](https://github.com/Azure/azure-service-operator/tree/main/v2/samples/dbforpostgresql/v1api20230601preview/v1api20230601preview_flexibleserver.yaml) | +| FlexibleServersConfiguration | 2023-06-01-preview | v1api20230601preview | v2.6.0 | [View](https://github.com/Azure/azure-service-operator/tree/main/v2/samples/dbforpostgresql/v1api20230601preview/v1api20230601preview_flexibleserversconfiguration.yaml) | +| FlexibleServersDatabase | 2023-06-01-preview | v1api20230601preview | v2.6.0 | [View](https://github.com/Azure/azure-service-operator/tree/main/v2/samples/dbforpostgresql/v1api20230601preview/v1api20230601preview_flexibleserversdatabase.yaml) | +| FlexibleServersFirewallRule | 2023-06-01-preview | v1api20230601preview | v2.6.0 | [View](https://github.com/Azure/azure-service-operator/tree/main/v2/samples/dbforpostgresql/v1api20230601preview/v1api20230601preview_flexibleserversfirewallrule.yaml) | + ### Released These resource(s) are available for use in the current release of ASO. Different versions of a given resource reflect different versions of the Azure ARM API. diff --git a/v2/api/dbforpostgresql/customizations/flexible_server_extension_types_gen.go b/v2/api/dbforpostgresql/customizations/flexible_server_extension_types_gen.go index badc82aa311..29e13aecbd5 100644 --- a/v2/api/dbforpostgresql/customizations/flexible_server_extension_types_gen.go +++ b/v2/api/dbforpostgresql/customizations/flexible_server_extension_types_gen.go @@ -10,6 +10,8 @@ import ( v20220120ps "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20220120preview/storage" v20221201 "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20221201" v20221201s "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20221201/storage" + v20230601p "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20230601preview" + v20230601ps "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20230601preview/storage" "github.com/Azure/azure-service-operator/v2/pkg/genruntime" ) @@ -24,5 +26,7 @@ func (extension *FlexibleServerExtension) GetExtendedResources() []genruntime.Ku &v20220120p.FlexibleServer{}, &v20220120ps.FlexibleServer{}, &v20221201.FlexibleServer{}, - &v20221201s.FlexibleServer{}} + &v20221201s.FlexibleServer{}, + &v20230601p.FlexibleServer{}, + &v20230601ps.FlexibleServer{}} } diff --git a/v2/api/dbforpostgresql/customizations/flexible_servers_configuration_extension_types_gen.go b/v2/api/dbforpostgresql/customizations/flexible_servers_configuration_extension_types_gen.go index b14c867a053..2711a252a32 100644 --- a/v2/api/dbforpostgresql/customizations/flexible_servers_configuration_extension_types_gen.go +++ b/v2/api/dbforpostgresql/customizations/flexible_servers_configuration_extension_types_gen.go @@ -10,6 +10,8 @@ import ( v20220120ps "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20220120preview/storage" v20221201 "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20221201" v20221201s "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20221201/storage" + v20230601p "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20230601preview" + v20230601ps "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20230601preview/storage" "github.com/Azure/azure-service-operator/v2/pkg/genruntime" ) @@ -24,5 +26,7 @@ func (extension *FlexibleServersConfigurationExtension) GetExtendedResources() [ &v20220120p.FlexibleServersConfiguration{}, &v20220120ps.FlexibleServersConfiguration{}, &v20221201.FlexibleServersConfiguration{}, - &v20221201s.FlexibleServersConfiguration{}} + &v20221201s.FlexibleServersConfiguration{}, + &v20230601p.FlexibleServersConfiguration{}, + &v20230601ps.FlexibleServersConfiguration{}} } diff --git a/v2/api/dbforpostgresql/customizations/flexible_servers_database_extension_types_gen.go b/v2/api/dbforpostgresql/customizations/flexible_servers_database_extension_types_gen.go index 59291e69aa1..58eeee3f55e 100644 --- a/v2/api/dbforpostgresql/customizations/flexible_servers_database_extension_types_gen.go +++ b/v2/api/dbforpostgresql/customizations/flexible_servers_database_extension_types_gen.go @@ -10,6 +10,8 @@ import ( v20220120ps "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20220120preview/storage" v20221201 "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20221201" v20221201s "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20221201/storage" + v20230601p "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20230601preview" + v20230601ps "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20230601preview/storage" "github.com/Azure/azure-service-operator/v2/pkg/genruntime" ) @@ -24,5 +26,7 @@ func (extension *FlexibleServersDatabaseExtension) GetExtendedResources() []genr &v20220120p.FlexibleServersDatabase{}, &v20220120ps.FlexibleServersDatabase{}, &v20221201.FlexibleServersDatabase{}, - &v20221201s.FlexibleServersDatabase{}} + &v20221201s.FlexibleServersDatabase{}, + &v20230601p.FlexibleServersDatabase{}, + &v20230601ps.FlexibleServersDatabase{}} } diff --git a/v2/api/dbforpostgresql/customizations/flexible_servers_firewall_rule_extension_types_gen.go b/v2/api/dbforpostgresql/customizations/flexible_servers_firewall_rule_extension_types_gen.go index 9d74b0b920c..6dc0a225b51 100644 --- a/v2/api/dbforpostgresql/customizations/flexible_servers_firewall_rule_extension_types_gen.go +++ b/v2/api/dbforpostgresql/customizations/flexible_servers_firewall_rule_extension_types_gen.go @@ -10,6 +10,8 @@ import ( v20220120ps "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20220120preview/storage" v20221201 "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20221201" v20221201s "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20221201/storage" + v20230601p "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20230601preview" + v20230601ps "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20230601preview/storage" "github.com/Azure/azure-service-operator/v2/pkg/genruntime" ) @@ -24,5 +26,7 @@ func (extension *FlexibleServersFirewallRuleExtension) GetExtendedResources() [] &v20220120p.FlexibleServersFirewallRule{}, &v20220120ps.FlexibleServersFirewallRule{}, &v20221201.FlexibleServersFirewallRule{}, - &v20221201s.FlexibleServersFirewallRule{}} + &v20221201s.FlexibleServersFirewallRule{}, + &v20230601p.FlexibleServersFirewallRule{}, + &v20230601ps.FlexibleServersFirewallRule{}} } diff --git a/v2/api/dbforpostgresql/v1api20230601preview/doc.go b/v2/api/dbforpostgresql/v1api20230601preview/doc.go new file mode 100644 index 00000000000..f291c7a3b4d --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/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 v1api20230601preview contains API Schema definitions for the dbforpostgresql v1api20230601preview API group +// +groupName=dbforpostgresql.azure.com +package v1api20230601preview diff --git a/v2/api/dbforpostgresql/v1api20230601preview/flexible_server_spec_arm_types_gen.go b/v2/api/dbforpostgresql/v1api20230601preview/flexible_server_spec_arm_types_gen.go new file mode 100644 index 00000000000..0d491e95330 --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/flexible_server_spec_arm_types_gen.go @@ -0,0 +1,239 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20230601preview + +import "github.com/Azure/azure-service-operator/v2/pkg/genruntime" + +type FlexibleServer_Spec_ARM struct { + // Identity: Describes the identity of the application. + Identity *UserAssignedIdentity_ARM `json:"identity,omitempty"` + + // Location: The geo-location where the resource lives + Location *string `json:"location,omitempty"` + Name string `json:"name,omitempty"` + + // Properties: Properties of the server. + Properties *ServerProperties_ARM `json:"properties,omitempty"` + + // Sku: The SKU (pricing tier) of the server. + Sku *Sku_ARM `json:"sku,omitempty"` + + // Tags: Resource tags. + Tags map[string]string `json:"tags,omitempty"` +} + +var _ genruntime.ARMResourceSpec = &FlexibleServer_Spec_ARM{} + +// GetAPIVersion returns the ARM API version of the resource. This is always "2023-06-01-preview" +func (server FlexibleServer_Spec_ARM) GetAPIVersion() string { + return string(APIVersion_Value) +} + +// GetName returns the Name of the resource +func (server *FlexibleServer_Spec_ARM) GetName() string { + return server.Name +} + +// GetType returns the ARM Type of the resource. This is always "Microsoft.DBforPostgreSQL/flexibleServers" +func (server *FlexibleServer_Spec_ARM) GetType() string { + return "Microsoft.DBforPostgreSQL/flexibleServers" +} + +// The properties of a server. +type ServerProperties_ARM struct { + // AdministratorLogin: The administrator's login name of a server. Can only be specified when the server is being created + // (and is required for creation). + AdministratorLogin *string `json:"administratorLogin,omitempty"` + + // AdministratorLoginPassword: The administrator login password (required for server creation). + AdministratorLoginPassword *string `json:"administratorLoginPassword,omitempty"` + + // AuthConfig: AuthConfig properties of a server. + AuthConfig *AuthConfig_ARM `json:"authConfig,omitempty"` + + // AvailabilityZone: availability zone information of the server. + AvailabilityZone *string `json:"availabilityZone,omitempty"` + + // Backup: Backup properties of a server. + Backup *Backup_ARM `json:"backup,omitempty"` + + // CreateMode: The mode to create a new PostgreSQL server. + CreateMode *ServerProperties_CreateMode `json:"createMode,omitempty"` + + // DataEncryption: Data encryption properties of a server. + DataEncryption *DataEncryption_ARM `json:"dataEncryption,omitempty"` + + // HighAvailability: High availability properties of a server. + HighAvailability *HighAvailability_ARM `json:"highAvailability,omitempty"` + + // MaintenanceWindow: Maintenance window properties of a server. + MaintenanceWindow *MaintenanceWindow_ARM `json:"maintenanceWindow,omitempty"` + + // Network: Network properties of a server. This Network property is required to be passed only in case you want the server + // to be Private access server. + Network *Network_ARM `json:"network,omitempty"` + + // PointInTimeUTC: Restore point creation time (ISO8601 format), specifying the time to restore from. It's required when + // 'createMode' is 'PointInTimeRestore' or 'GeoRestore' or 'ReviveDropped'. + PointInTimeUTC *string `json:"pointInTimeUTC,omitempty"` + + // Replica: Replica properties of a server. These Replica properties are required to be passed only in case you want to + // Promote a server. + Replica *Replica_ARM `json:"replica,omitempty"` + + // ReplicationRole: Replication role of the server + ReplicationRole *ReplicationRole `json:"replicationRole,omitempty"` + SourceServerResourceId *string `json:"sourceServerResourceId,omitempty"` + + // Storage: Storage properties of a server. + Storage *Storage_ARM `json:"storage,omitempty"` + + // Version: PostgreSQL Server version. + Version *ServerVersion `json:"version,omitempty"` +} + +// Sku information related properties of a server. +type Sku_ARM struct { + // Name: The name of the sku, typically, tier + family + cores, e.g. Standard_D4s_v3. + Name *string `json:"name,omitempty"` + + // Tier: The tier of the particular SKU, e.g. Burstable. + Tier *Sku_Tier `json:"tier,omitempty"` +} + +// Information describing the identities associated with this application. +type UserAssignedIdentity_ARM struct { + // Type: the types of identities associated with this resource; currently restricted to 'None and UserAssigned' + Type *UserAssignedIdentity_Type `json:"type,omitempty"` + UserAssignedIdentities map[string]UserAssignedIdentityDetails_ARM `json:"userAssignedIdentities,omitempty"` +} + +// Authentication configuration properties of a server +type AuthConfig_ARM struct { + // ActiveDirectoryAuth: If Enabled, Azure Active Directory authentication is enabled. + ActiveDirectoryAuth *AuthConfig_ActiveDirectoryAuth `json:"activeDirectoryAuth,omitempty"` + + // PasswordAuth: If Enabled, Password authentication is enabled. + PasswordAuth *AuthConfig_PasswordAuth `json:"passwordAuth,omitempty"` + + // TenantId: Tenant id of the server. + TenantId *string `json:"tenantId,omitempty"` +} + +// Backup properties of a server +type Backup_ARM struct { + // BackupRetentionDays: Backup retention days for the server. + BackupRetentionDays *int `json:"backupRetentionDays,omitempty"` + + // GeoRedundantBackup: A value indicating whether Geo-Redundant backup is enabled on the server. + GeoRedundantBackup *Backup_GeoRedundantBackup `json:"geoRedundantBackup,omitempty"` +} + +// Data encryption properties of a server +type DataEncryption_ARM struct { + // GeoBackupEncryptionKeyStatus: Geo-backup encryption key status for Data encryption enabled server. + GeoBackupEncryptionKeyStatus *DataEncryption_GeoBackupEncryptionKeyStatus `json:"geoBackupEncryptionKeyStatus,omitempty"` + + // GeoBackupKeyURI: URI for the key in keyvault for data encryption for geo-backup of server. + GeoBackupKeyURI *string `json:"geoBackupKeyURI,omitempty"` + GeoBackupUserAssignedIdentityId *string `json:"geoBackupUserAssignedIdentityId,omitempty"` + + // PrimaryEncryptionKeyStatus: Primary encryption key status for Data encryption enabled server. + PrimaryEncryptionKeyStatus *DataEncryption_PrimaryEncryptionKeyStatus `json:"primaryEncryptionKeyStatus,omitempty"` + + // PrimaryKeyURI: URI for the key in keyvault for data encryption of the primary server. + PrimaryKeyURI *string `json:"primaryKeyURI,omitempty"` + PrimaryUserAssignedIdentityId *string `json:"primaryUserAssignedIdentityId,omitempty"` + + // Type: Data encryption type to depict if it is System Managed vs Azure Key vault. + Type *DataEncryption_Type `json:"type,omitempty"` +} + +// High availability properties of a server +type HighAvailability_ARM struct { + // Mode: The HA mode for the server. + Mode *HighAvailability_Mode `json:"mode,omitempty"` + + // StandbyAvailabilityZone: availability zone information of the standby. + StandbyAvailabilityZone *string `json:"standbyAvailabilityZone,omitempty"` +} + +// Maintenance window properties of a server. +type MaintenanceWindow_ARM struct { + // CustomWindow: indicates whether custom window is enabled or disabled + CustomWindow *string `json:"customWindow,omitempty"` + + // DayOfWeek: day of week for maintenance window + DayOfWeek *int `json:"dayOfWeek,omitempty"` + + // StartHour: start hour for maintenance window + StartHour *int `json:"startHour,omitempty"` + + // StartMinute: start minute for maintenance window + StartMinute *int `json:"startMinute,omitempty"` +} + +// Network properties of a server. +type Network_ARM struct { + DelegatedSubnetResourceId *string `json:"delegatedSubnetResourceId,omitempty"` + PrivateDnsZoneArmResourceId *string `json:"privateDnsZoneArmResourceId,omitempty"` + + // PublicNetworkAccess: public network access is enabled or not + PublicNetworkAccess *Network_PublicNetworkAccess `json:"publicNetworkAccess,omitempty"` +} + +// Replica properties of a server +type Replica_ARM struct { + // PromoteMode: Sets the promote mode for a replica server. This is a write only property. + PromoteMode *Replica_PromoteMode `json:"promoteMode,omitempty"` + + // PromoteOption: Sets the promote options for a replica server. This is a write only property. + PromoteOption *Replica_PromoteOption `json:"promoteOption,omitempty"` + + // Role: Used to indicate role of the server in replication set. + Role *ReplicationRole `json:"role,omitempty"` +} + +// +kubebuilder:validation:Enum={"Burstable","GeneralPurpose","MemoryOptimized"} +type Sku_Tier string + +const ( + Sku_Tier_Burstable = Sku_Tier("Burstable") + Sku_Tier_GeneralPurpose = Sku_Tier("GeneralPurpose") + Sku_Tier_MemoryOptimized = Sku_Tier("MemoryOptimized") +) + +// Storage properties of a server +type Storage_ARM struct { + // AutoGrow: Flag to enable / disable Storage Auto grow for flexible server. + AutoGrow *Storage_AutoGrow `json:"autoGrow,omitempty"` + + // Iops: Storage tier IOPS quantity. This property is required to be set for storage Type PremiumV2_LRS + Iops *int `json:"iops,omitempty"` + + // StorageSizeGB: Max storage allowed for a server. + StorageSizeGB *int `json:"storageSizeGB,omitempty"` + + // Throughput: Storage throughput for the server. This is required to be set for storage Type PremiumV2_LRS + Throughput *int `json:"throughput,omitempty"` + + // Tier: Name of storage tier for IOPS. + Tier *Storage_Tier `json:"tier,omitempty"` + + // Type: Storage type for the server. Allowed values are Premium_LRS and PremiumV2_LRS, and default is Premium_LRS if not + // specified + Type *Storage_Type `json:"type,omitempty"` +} + +// +kubebuilder:validation:Enum={"None","UserAssigned"} +type UserAssignedIdentity_Type string + +const ( + UserAssignedIdentity_Type_None = UserAssignedIdentity_Type("None") + UserAssignedIdentity_Type_UserAssigned = UserAssignedIdentity_Type("UserAssigned") +) + +// Information about the user assigned identity for the resource +type UserAssignedIdentityDetails_ARM struct { +} diff --git a/v2/api/dbforpostgresql/v1api20230601preview/flexible_server_spec_arm_types_gen_test.go b/v2/api/dbforpostgresql/v1api20230601preview/flexible_server_spec_arm_types_gen_test.go new file mode 100644 index 00000000000..ff860bc5e74 --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/flexible_server_spec_arm_types_gen_test.go @@ -0,0 +1,916 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20230601preview + +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_FlexibleServer_Spec_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of FlexibleServer_Spec_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServer_Spec_ARM, FlexibleServer_Spec_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServer_Spec_ARM runs a test to see if a specific instance of FlexibleServer_Spec_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServer_Spec_ARM(subject FlexibleServer_Spec_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServer_Spec_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of FlexibleServer_Spec_ARM instances for property testing - lazily instantiated by +// FlexibleServer_Spec_ARMGenerator() +var flexibleServer_Spec_ARMGenerator gopter.Gen + +// FlexibleServer_Spec_ARMGenerator returns a generator of FlexibleServer_Spec_ARM instances for property testing. +// We first initialize flexibleServer_Spec_ARMGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func FlexibleServer_Spec_ARMGenerator() gopter.Gen { + if flexibleServer_Spec_ARMGenerator != nil { + return flexibleServer_Spec_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServer_Spec_ARM(generators) + flexibleServer_Spec_ARMGenerator = gen.Struct(reflect.TypeOf(FlexibleServer_Spec_ARM{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServer_Spec_ARM(generators) + AddRelatedPropertyGeneratorsForFlexibleServer_Spec_ARM(generators) + flexibleServer_Spec_ARMGenerator = gen.Struct(reflect.TypeOf(FlexibleServer_Spec_ARM{}), generators) + + return flexibleServer_Spec_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForFlexibleServer_Spec_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForFlexibleServer_Spec_ARM(gens map[string]gopter.Gen) { + gens["Location"] = gen.PtrOf(gen.AlphaString()) + gens["Name"] = gen.AlphaString() + gens["Tags"] = gen.MapOf(gen.AlphaString(), gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForFlexibleServer_Spec_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForFlexibleServer_Spec_ARM(gens map[string]gopter.Gen) { + gens["Identity"] = gen.PtrOf(UserAssignedIdentity_ARMGenerator()) + gens["Properties"] = gen.PtrOf(ServerProperties_ARMGenerator()) + gens["Sku"] = gen.PtrOf(Sku_ARMGenerator()) +} + +func Test_ServerProperties_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of ServerProperties_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForServerProperties_ARM, ServerProperties_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForServerProperties_ARM runs a test to see if a specific instance of ServerProperties_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForServerProperties_ARM(subject ServerProperties_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual ServerProperties_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of ServerProperties_ARM instances for property testing - lazily instantiated by +// ServerProperties_ARMGenerator() +var serverProperties_ARMGenerator gopter.Gen + +// ServerProperties_ARMGenerator returns a generator of ServerProperties_ARM instances for property testing. +// We first initialize serverProperties_ARMGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func ServerProperties_ARMGenerator() gopter.Gen { + if serverProperties_ARMGenerator != nil { + return serverProperties_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForServerProperties_ARM(generators) + serverProperties_ARMGenerator = gen.Struct(reflect.TypeOf(ServerProperties_ARM{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForServerProperties_ARM(generators) + AddRelatedPropertyGeneratorsForServerProperties_ARM(generators) + serverProperties_ARMGenerator = gen.Struct(reflect.TypeOf(ServerProperties_ARM{}), generators) + + return serverProperties_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForServerProperties_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForServerProperties_ARM(gens map[string]gopter.Gen) { + gens["AdministratorLogin"] = gen.PtrOf(gen.AlphaString()) + gens["AdministratorLoginPassword"] = gen.PtrOf(gen.AlphaString()) + gens["AvailabilityZone"] = gen.PtrOf(gen.AlphaString()) + gens["CreateMode"] = gen.PtrOf(gen.OneConstOf( + ServerProperties_CreateMode_Create, + ServerProperties_CreateMode_Default, + ServerProperties_CreateMode_GeoRestore, + ServerProperties_CreateMode_PointInTimeRestore, + ServerProperties_CreateMode_Replica, + ServerProperties_CreateMode_ReviveDropped, + ServerProperties_CreateMode_Update)) + gens["PointInTimeUTC"] = gen.PtrOf(gen.AlphaString()) + gens["ReplicationRole"] = gen.PtrOf(gen.OneConstOf( + ReplicationRole_AsyncReplica, + ReplicationRole_GeoAsyncReplica, + ReplicationRole_None, + ReplicationRole_Primary)) + gens["SourceServerResourceId"] = gen.PtrOf(gen.AlphaString()) + gens["Version"] = gen.PtrOf(gen.OneConstOf( + ServerVersion_11, + ServerVersion_12, + ServerVersion_13, + ServerVersion_14, + ServerVersion_15, + ServerVersion_16)) +} + +// AddRelatedPropertyGeneratorsForServerProperties_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForServerProperties_ARM(gens map[string]gopter.Gen) { + gens["AuthConfig"] = gen.PtrOf(AuthConfig_ARMGenerator()) + gens["Backup"] = gen.PtrOf(Backup_ARMGenerator()) + gens["DataEncryption"] = gen.PtrOf(DataEncryption_ARMGenerator()) + gens["HighAvailability"] = gen.PtrOf(HighAvailability_ARMGenerator()) + gens["MaintenanceWindow"] = gen.PtrOf(MaintenanceWindow_ARMGenerator()) + gens["Network"] = gen.PtrOf(Network_ARMGenerator()) + gens["Replica"] = gen.PtrOf(Replica_ARMGenerator()) + gens["Storage"] = gen.PtrOf(Storage_ARMGenerator()) +} + +func Test_Sku_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Sku_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForSku_ARM, Sku_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForSku_ARM runs a test to see if a specific instance of Sku_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForSku_ARM(subject Sku_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Sku_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Sku_ARM instances for property testing - lazily instantiated by Sku_ARMGenerator() +var sku_ARMGenerator gopter.Gen + +// Sku_ARMGenerator returns a generator of Sku_ARM instances for property testing. +func Sku_ARMGenerator() gopter.Gen { + if sku_ARMGenerator != nil { + return sku_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForSku_ARM(generators) + sku_ARMGenerator = gen.Struct(reflect.TypeOf(Sku_ARM{}), generators) + + return sku_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForSku_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForSku_ARM(gens map[string]gopter.Gen) { + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["Tier"] = gen.PtrOf(gen.OneConstOf(Sku_Tier_Burstable, Sku_Tier_GeneralPurpose, Sku_Tier_MemoryOptimized)) +} + +func Test_UserAssignedIdentity_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of UserAssignedIdentity_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForUserAssignedIdentity_ARM, UserAssignedIdentity_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForUserAssignedIdentity_ARM runs a test to see if a specific instance of UserAssignedIdentity_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForUserAssignedIdentity_ARM(subject UserAssignedIdentity_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual UserAssignedIdentity_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of UserAssignedIdentity_ARM instances for property testing - lazily instantiated by +// UserAssignedIdentity_ARMGenerator() +var userAssignedIdentity_ARMGenerator gopter.Gen + +// UserAssignedIdentity_ARMGenerator returns a generator of UserAssignedIdentity_ARM instances for property testing. +// We first initialize userAssignedIdentity_ARMGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func UserAssignedIdentity_ARMGenerator() gopter.Gen { + if userAssignedIdentity_ARMGenerator != nil { + return userAssignedIdentity_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForUserAssignedIdentity_ARM(generators) + userAssignedIdentity_ARMGenerator = gen.Struct(reflect.TypeOf(UserAssignedIdentity_ARM{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForUserAssignedIdentity_ARM(generators) + AddRelatedPropertyGeneratorsForUserAssignedIdentity_ARM(generators) + userAssignedIdentity_ARMGenerator = gen.Struct(reflect.TypeOf(UserAssignedIdentity_ARM{}), generators) + + return userAssignedIdentity_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForUserAssignedIdentity_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForUserAssignedIdentity_ARM(gens map[string]gopter.Gen) { + gens["Type"] = gen.PtrOf(gen.OneConstOf(UserAssignedIdentity_Type_None, UserAssignedIdentity_Type_UserAssigned)) +} + +// AddRelatedPropertyGeneratorsForUserAssignedIdentity_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForUserAssignedIdentity_ARM(gens map[string]gopter.Gen) { + gens["UserAssignedIdentities"] = gen.MapOf(gen.AlphaString(), UserAssignedIdentityDetails_ARMGenerator()) +} + +func Test_AuthConfig_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of AuthConfig_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForAuthConfig_ARM, AuthConfig_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForAuthConfig_ARM runs a test to see if a specific instance of AuthConfig_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForAuthConfig_ARM(subject AuthConfig_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual AuthConfig_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of AuthConfig_ARM instances for property testing - lazily instantiated by AuthConfig_ARMGenerator() +var authConfig_ARMGenerator gopter.Gen + +// AuthConfig_ARMGenerator returns a generator of AuthConfig_ARM instances for property testing. +func AuthConfig_ARMGenerator() gopter.Gen { + if authConfig_ARMGenerator != nil { + return authConfig_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForAuthConfig_ARM(generators) + authConfig_ARMGenerator = gen.Struct(reflect.TypeOf(AuthConfig_ARM{}), generators) + + return authConfig_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForAuthConfig_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForAuthConfig_ARM(gens map[string]gopter.Gen) { + gens["ActiveDirectoryAuth"] = gen.PtrOf(gen.OneConstOf(AuthConfig_ActiveDirectoryAuth_Disabled, AuthConfig_ActiveDirectoryAuth_Enabled)) + gens["PasswordAuth"] = gen.PtrOf(gen.OneConstOf(AuthConfig_PasswordAuth_Disabled, AuthConfig_PasswordAuth_Enabled)) + gens["TenantId"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_Backup_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Backup_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackup_ARM, Backup_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackup_ARM runs a test to see if a specific instance of Backup_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForBackup_ARM(subject Backup_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Backup_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Backup_ARM instances for property testing - lazily instantiated by Backup_ARMGenerator() +var backup_ARMGenerator gopter.Gen + +// Backup_ARMGenerator returns a generator of Backup_ARM instances for property testing. +func Backup_ARMGenerator() gopter.Gen { + if backup_ARMGenerator != nil { + return backup_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackup_ARM(generators) + backup_ARMGenerator = gen.Struct(reflect.TypeOf(Backup_ARM{}), generators) + + return backup_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForBackup_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackup_ARM(gens map[string]gopter.Gen) { + gens["BackupRetentionDays"] = gen.PtrOf(gen.Int()) + gens["GeoRedundantBackup"] = gen.PtrOf(gen.OneConstOf(Backup_GeoRedundantBackup_Disabled, Backup_GeoRedundantBackup_Enabled)) +} + +func Test_DataEncryption_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of DataEncryption_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForDataEncryption_ARM, DataEncryption_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForDataEncryption_ARM runs a test to see if a specific instance of DataEncryption_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForDataEncryption_ARM(subject DataEncryption_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual DataEncryption_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of DataEncryption_ARM instances for property testing - lazily instantiated by DataEncryption_ARMGenerator() +var dataEncryption_ARMGenerator gopter.Gen + +// DataEncryption_ARMGenerator returns a generator of DataEncryption_ARM instances for property testing. +func DataEncryption_ARMGenerator() gopter.Gen { + if dataEncryption_ARMGenerator != nil { + return dataEncryption_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForDataEncryption_ARM(generators) + dataEncryption_ARMGenerator = gen.Struct(reflect.TypeOf(DataEncryption_ARM{}), generators) + + return dataEncryption_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForDataEncryption_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForDataEncryption_ARM(gens map[string]gopter.Gen) { + gens["GeoBackupEncryptionKeyStatus"] = gen.PtrOf(gen.OneConstOf(DataEncryption_GeoBackupEncryptionKeyStatus_Invalid, DataEncryption_GeoBackupEncryptionKeyStatus_Valid)) + gens["GeoBackupKeyURI"] = gen.PtrOf(gen.AlphaString()) + gens["GeoBackupUserAssignedIdentityId"] = gen.PtrOf(gen.AlphaString()) + gens["PrimaryEncryptionKeyStatus"] = gen.PtrOf(gen.OneConstOf(DataEncryption_PrimaryEncryptionKeyStatus_Invalid, DataEncryption_PrimaryEncryptionKeyStatus_Valid)) + gens["PrimaryKeyURI"] = gen.PtrOf(gen.AlphaString()) + gens["PrimaryUserAssignedIdentityId"] = gen.PtrOf(gen.AlphaString()) + gens["Type"] = gen.PtrOf(gen.OneConstOf(DataEncryption_Type_AzureKeyVault, DataEncryption_Type_SystemManaged)) +} + +func Test_HighAvailability_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of HighAvailability_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForHighAvailability_ARM, HighAvailability_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForHighAvailability_ARM runs a test to see if a specific instance of HighAvailability_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForHighAvailability_ARM(subject HighAvailability_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual HighAvailability_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of HighAvailability_ARM instances for property testing - lazily instantiated by +// HighAvailability_ARMGenerator() +var highAvailability_ARMGenerator gopter.Gen + +// HighAvailability_ARMGenerator returns a generator of HighAvailability_ARM instances for property testing. +func HighAvailability_ARMGenerator() gopter.Gen { + if highAvailability_ARMGenerator != nil { + return highAvailability_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForHighAvailability_ARM(generators) + highAvailability_ARMGenerator = gen.Struct(reflect.TypeOf(HighAvailability_ARM{}), generators) + + return highAvailability_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForHighAvailability_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForHighAvailability_ARM(gens map[string]gopter.Gen) { + gens["Mode"] = gen.PtrOf(gen.OneConstOf(HighAvailability_Mode_Disabled, HighAvailability_Mode_SameZone, HighAvailability_Mode_ZoneRedundant)) + gens["StandbyAvailabilityZone"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_MaintenanceWindow_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of MaintenanceWindow_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForMaintenanceWindow_ARM, MaintenanceWindow_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForMaintenanceWindow_ARM runs a test to see if a specific instance of MaintenanceWindow_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForMaintenanceWindow_ARM(subject MaintenanceWindow_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual MaintenanceWindow_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of MaintenanceWindow_ARM instances for property testing - lazily instantiated by +// MaintenanceWindow_ARMGenerator() +var maintenanceWindow_ARMGenerator gopter.Gen + +// MaintenanceWindow_ARMGenerator returns a generator of MaintenanceWindow_ARM instances for property testing. +func MaintenanceWindow_ARMGenerator() gopter.Gen { + if maintenanceWindow_ARMGenerator != nil { + return maintenanceWindow_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForMaintenanceWindow_ARM(generators) + maintenanceWindow_ARMGenerator = gen.Struct(reflect.TypeOf(MaintenanceWindow_ARM{}), generators) + + return maintenanceWindow_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForMaintenanceWindow_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForMaintenanceWindow_ARM(gens map[string]gopter.Gen) { + gens["CustomWindow"] = gen.PtrOf(gen.AlphaString()) + gens["DayOfWeek"] = gen.PtrOf(gen.Int()) + gens["StartHour"] = gen.PtrOf(gen.Int()) + gens["StartMinute"] = gen.PtrOf(gen.Int()) +} + +func Test_Network_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Network_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForNetwork_ARM, Network_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForNetwork_ARM runs a test to see if a specific instance of Network_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForNetwork_ARM(subject Network_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Network_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Network_ARM instances for property testing - lazily instantiated by Network_ARMGenerator() +var network_ARMGenerator gopter.Gen + +// Network_ARMGenerator returns a generator of Network_ARM instances for property testing. +func Network_ARMGenerator() gopter.Gen { + if network_ARMGenerator != nil { + return network_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForNetwork_ARM(generators) + network_ARMGenerator = gen.Struct(reflect.TypeOf(Network_ARM{}), generators) + + return network_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForNetwork_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForNetwork_ARM(gens map[string]gopter.Gen) { + gens["DelegatedSubnetResourceId"] = gen.PtrOf(gen.AlphaString()) + gens["PrivateDnsZoneArmResourceId"] = gen.PtrOf(gen.AlphaString()) + gens["PublicNetworkAccess"] = gen.PtrOf(gen.OneConstOf(Network_PublicNetworkAccess_Disabled, Network_PublicNetworkAccess_Enabled)) +} + +func Test_Replica_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Replica_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForReplica_ARM, Replica_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForReplica_ARM runs a test to see if a specific instance of Replica_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForReplica_ARM(subject Replica_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Replica_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Replica_ARM instances for property testing - lazily instantiated by Replica_ARMGenerator() +var replica_ARMGenerator gopter.Gen + +// Replica_ARMGenerator returns a generator of Replica_ARM instances for property testing. +func Replica_ARMGenerator() gopter.Gen { + if replica_ARMGenerator != nil { + return replica_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForReplica_ARM(generators) + replica_ARMGenerator = gen.Struct(reflect.TypeOf(Replica_ARM{}), generators) + + return replica_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForReplica_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForReplica_ARM(gens map[string]gopter.Gen) { + gens["PromoteMode"] = gen.PtrOf(gen.OneConstOf(Replica_PromoteMode_Standalone, Replica_PromoteMode_Switchover)) + gens["PromoteOption"] = gen.PtrOf(gen.OneConstOf(Replica_PromoteOption_Forced, Replica_PromoteOption_Planned)) + gens["Role"] = gen.PtrOf(gen.OneConstOf( + ReplicationRole_AsyncReplica, + ReplicationRole_GeoAsyncReplica, + ReplicationRole_None, + ReplicationRole_Primary)) +} + +func Test_Storage_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Storage_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForStorage_ARM, Storage_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForStorage_ARM runs a test to see if a specific instance of Storage_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForStorage_ARM(subject Storage_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Storage_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Storage_ARM instances for property testing - lazily instantiated by Storage_ARMGenerator() +var storage_ARMGenerator gopter.Gen + +// Storage_ARMGenerator returns a generator of Storage_ARM instances for property testing. +func Storage_ARMGenerator() gopter.Gen { + if storage_ARMGenerator != nil { + return storage_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForStorage_ARM(generators) + storage_ARMGenerator = gen.Struct(reflect.TypeOf(Storage_ARM{}), generators) + + return storage_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForStorage_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForStorage_ARM(gens map[string]gopter.Gen) { + gens["AutoGrow"] = gen.PtrOf(gen.OneConstOf(Storage_AutoGrow_Disabled, Storage_AutoGrow_Enabled)) + gens["Iops"] = gen.PtrOf(gen.Int()) + gens["StorageSizeGB"] = gen.PtrOf(gen.Int()) + gens["Throughput"] = gen.PtrOf(gen.Int()) + gens["Tier"] = gen.PtrOf(gen.OneConstOf( + Storage_Tier_P1, + Storage_Tier_P10, + Storage_Tier_P15, + Storage_Tier_P2, + Storage_Tier_P20, + Storage_Tier_P3, + Storage_Tier_P30, + Storage_Tier_P4, + Storage_Tier_P40, + Storage_Tier_P50, + Storage_Tier_P6, + Storage_Tier_P60, + Storage_Tier_P70, + Storage_Tier_P80)) + gens["Type"] = gen.PtrOf(gen.OneConstOf(Storage_Type_PremiumV2_LRS, Storage_Type_Premium_LRS)) +} + +func Test_UserAssignedIdentityDetails_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of UserAssignedIdentityDetails_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForUserAssignedIdentityDetails_ARM, UserAssignedIdentityDetails_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForUserAssignedIdentityDetails_ARM runs a test to see if a specific instance of UserAssignedIdentityDetails_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForUserAssignedIdentityDetails_ARM(subject UserAssignedIdentityDetails_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual UserAssignedIdentityDetails_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of UserAssignedIdentityDetails_ARM instances for property testing - lazily instantiated by +// UserAssignedIdentityDetails_ARMGenerator() +var userAssignedIdentityDetails_ARMGenerator gopter.Gen + +// UserAssignedIdentityDetails_ARMGenerator returns a generator of UserAssignedIdentityDetails_ARM instances for property testing. +func UserAssignedIdentityDetails_ARMGenerator() gopter.Gen { + if userAssignedIdentityDetails_ARMGenerator != nil { + return userAssignedIdentityDetails_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + userAssignedIdentityDetails_ARMGenerator = gen.Struct(reflect.TypeOf(UserAssignedIdentityDetails_ARM{}), generators) + + return userAssignedIdentityDetails_ARMGenerator +} diff --git a/v2/api/dbforpostgresql/v1api20230601preview/flexible_server_status_arm_types_gen.go b/v2/api/dbforpostgresql/v1api20230601preview/flexible_server_status_arm_types_gen.go new file mode 100644 index 00000000000..9cf2d8bbc2c --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/flexible_server_status_arm_types_gen.go @@ -0,0 +1,327 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20230601preview + +type FlexibleServer_STATUS_ARM struct { + // Id: Fully qualified resource ID for the resource. E.g. + // "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" + Id *string `json:"id,omitempty"` + + // Identity: Describes the identity of the application. + Identity *UserAssignedIdentity_STATUS_ARM `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: Properties of the server. + Properties *ServerProperties_STATUS_ARM `json:"properties,omitempty"` + + // Sku: The SKU (pricing tier) of the server. + Sku *Sku_STATUS_ARM `json:"sku,omitempty"` + + // SystemData: Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData *SystemData_STATUS_ARM `json:"systemData,omitempty"` + + // Tags: Resource tags. + Tags map[string]string `json:"tags,omitempty"` + + // Type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string `json:"type,omitempty"` +} + +// The properties of a server. +type ServerProperties_STATUS_ARM struct { + // AdministratorLogin: The administrator's login name of a server. Can only be specified when the server is being created + // (and is required for creation). + AdministratorLogin *string `json:"administratorLogin,omitempty"` + + // AuthConfig: AuthConfig properties of a server. + AuthConfig *AuthConfig_STATUS_ARM `json:"authConfig,omitempty"` + + // AvailabilityZone: availability zone information of the server. + AvailabilityZone *string `json:"availabilityZone,omitempty"` + + // Backup: Backup properties of a server. + Backup *Backup_STATUS_ARM `json:"backup,omitempty"` + + // CreateMode: The mode to create a new PostgreSQL server. + CreateMode *ServerProperties_CreateMode_STATUS `json:"createMode,omitempty"` + + // DataEncryption: Data encryption properties of a server. + DataEncryption *DataEncryption_STATUS_ARM `json:"dataEncryption,omitempty"` + + // FullyQualifiedDomainName: The fully qualified domain name of a server. + FullyQualifiedDomainName *string `json:"fullyQualifiedDomainName,omitempty"` + + // HighAvailability: High availability properties of a server. + HighAvailability *HighAvailability_STATUS_ARM `json:"highAvailability,omitempty"` + + // MaintenanceWindow: Maintenance window properties of a server. + MaintenanceWindow *MaintenanceWindow_STATUS_ARM `json:"maintenanceWindow,omitempty"` + + // MinorVersion: The minor version of the server. + MinorVersion *string `json:"minorVersion,omitempty"` + + // Network: Network properties of a server. This Network property is required to be passed only in case you want the server + // to be Private access server. + Network *Network_STATUS_ARM `json:"network,omitempty"` + + // PointInTimeUTC: Restore point creation time (ISO8601 format), specifying the time to restore from. It's required when + // 'createMode' is 'PointInTimeRestore' or 'GeoRestore' or 'ReviveDropped'. + PointInTimeUTC *string `json:"pointInTimeUTC,omitempty"` + + // PrivateEndpointConnections: List of private endpoint connections associated with the specified resource. + PrivateEndpointConnections []PrivateEndpointConnection_STATUS_ARM `json:"privateEndpointConnections,omitempty"` + + // Replica: Replica properties of a server. These Replica properties are required to be passed only in case you want to + // Promote a server. + Replica *Replica_STATUS_ARM `json:"replica,omitempty"` + + // ReplicaCapacity: Replicas allowed for a server. + ReplicaCapacity *int `json:"replicaCapacity,omitempty"` + + // ReplicationRole: Replication role of the server + ReplicationRole *ReplicationRole_STATUS `json:"replicationRole,omitempty"` + + // SourceServerResourceId: The source server resource ID to restore from. It's required when 'createMode' is + // 'PointInTimeRestore' or 'GeoRestore' or 'Replica' or 'ReviveDropped'. This property is returned only for Replica server + SourceServerResourceId *string `json:"sourceServerResourceId,omitempty"` + + // State: A state of a server that is visible to user. + State *ServerProperties_State_STATUS `json:"state,omitempty"` + + // Storage: Storage properties of a server. + Storage *Storage_STATUS_ARM `json:"storage,omitempty"` + + // Version: PostgreSQL Server version. + Version *ServerVersion_STATUS `json:"version,omitempty"` +} + +// Sku information related properties of a server. +type Sku_STATUS_ARM struct { + // Name: The name of the sku, typically, tier + family + cores, e.g. Standard_D4s_v3. + Name *string `json:"name,omitempty"` + + // Tier: The tier of the particular SKU, e.g. Burstable. + Tier *Sku_Tier_STATUS `json:"tier,omitempty"` +} + +// Metadata pertaining to creation and last modification of the resource. +type SystemData_STATUS_ARM struct { + // CreatedAt: The timestamp of resource creation (UTC). + CreatedAt *string `json:"createdAt,omitempty"` + + // CreatedBy: The identity that created the resource. + CreatedBy *string `json:"createdBy,omitempty"` + + // CreatedByType: The type of identity that created the resource. + CreatedByType *SystemData_CreatedByType_STATUS `json:"createdByType,omitempty"` + + // LastModifiedAt: The timestamp of resource last modification (UTC) + LastModifiedAt *string `json:"lastModifiedAt,omitempty"` + + // LastModifiedBy: The identity that last modified the resource. + LastModifiedBy *string `json:"lastModifiedBy,omitempty"` + + // LastModifiedByType: The type of identity that last modified the resource. + LastModifiedByType *SystemData_LastModifiedByType_STATUS `json:"lastModifiedByType,omitempty"` +} + +// Information describing the identities associated with this application. +type UserAssignedIdentity_STATUS_ARM struct { + // TenantId: Tenant id of the server. + TenantId *string `json:"tenantId,omitempty"` + + // Type: the types of identities associated with this resource; currently restricted to 'None and UserAssigned' + Type *UserAssignedIdentity_Type_STATUS `json:"type,omitempty"` + + // UserAssignedIdentities: represents user assigned identities map. + UserAssignedIdentities map[string]UserIdentity_STATUS_ARM `json:"userAssignedIdentities,omitempty"` +} + +// Authentication configuration properties of a server +type AuthConfig_STATUS_ARM struct { + // ActiveDirectoryAuth: If Enabled, Azure Active Directory authentication is enabled. + ActiveDirectoryAuth *AuthConfig_ActiveDirectoryAuth_STATUS `json:"activeDirectoryAuth,omitempty"` + + // PasswordAuth: If Enabled, Password authentication is enabled. + PasswordAuth *AuthConfig_PasswordAuth_STATUS `json:"passwordAuth,omitempty"` + + // TenantId: Tenant id of the server. + TenantId *string `json:"tenantId,omitempty"` +} + +// Backup properties of a server +type Backup_STATUS_ARM struct { + // BackupRetentionDays: Backup retention days for the server. + BackupRetentionDays *int `json:"backupRetentionDays,omitempty"` + + // EarliestRestoreDate: The earliest restore point time (ISO8601 format) for server. + EarliestRestoreDate *string `json:"earliestRestoreDate,omitempty"` + + // GeoRedundantBackup: A value indicating whether Geo-Redundant backup is enabled on the server. + GeoRedundantBackup *Backup_GeoRedundantBackup_STATUS `json:"geoRedundantBackup,omitempty"` +} + +// Data encryption properties of a server +type DataEncryption_STATUS_ARM struct { + // GeoBackupEncryptionKeyStatus: Geo-backup encryption key status for Data encryption enabled server. + GeoBackupEncryptionKeyStatus *DataEncryption_GeoBackupEncryptionKeyStatus_STATUS `json:"geoBackupEncryptionKeyStatus,omitempty"` + + // GeoBackupKeyURI: URI for the key in keyvault for data encryption for geo-backup of server. + GeoBackupKeyURI *string `json:"geoBackupKeyURI,omitempty"` + + // GeoBackupUserAssignedIdentityId: Resource Id for the User assigned identity to be used for data encryption for + // geo-backup of server. + GeoBackupUserAssignedIdentityId *string `json:"geoBackupUserAssignedIdentityId,omitempty"` + + // PrimaryEncryptionKeyStatus: Primary encryption key status for Data encryption enabled server. + PrimaryEncryptionKeyStatus *DataEncryption_PrimaryEncryptionKeyStatus_STATUS `json:"primaryEncryptionKeyStatus,omitempty"` + + // PrimaryKeyURI: URI for the key in keyvault for data encryption of the primary server. + PrimaryKeyURI *string `json:"primaryKeyURI,omitempty"` + + // PrimaryUserAssignedIdentityId: Resource Id for the User assigned identity to be used for data encryption of the primary + // server. + PrimaryUserAssignedIdentityId *string `json:"primaryUserAssignedIdentityId,omitempty"` + + // Type: Data encryption type to depict if it is System Managed vs Azure Key vault. + Type *DataEncryption_Type_STATUS `json:"type,omitempty"` +} + +// High availability properties of a server +type HighAvailability_STATUS_ARM struct { + // Mode: The HA mode for the server. + Mode *HighAvailability_Mode_STATUS `json:"mode,omitempty"` + + // StandbyAvailabilityZone: availability zone information of the standby. + StandbyAvailabilityZone *string `json:"standbyAvailabilityZone,omitempty"` + + // State: A state of a HA server that is visible to user. + State *HighAvailability_State_STATUS `json:"state,omitempty"` +} + +// Maintenance window properties of a server. +type MaintenanceWindow_STATUS_ARM struct { + // CustomWindow: indicates whether custom window is enabled or disabled + CustomWindow *string `json:"customWindow,omitempty"` + + // DayOfWeek: day of week for maintenance window + DayOfWeek *int `json:"dayOfWeek,omitempty"` + + // StartHour: start hour for maintenance window + StartHour *int `json:"startHour,omitempty"` + + // StartMinute: start minute for maintenance window + StartMinute *int `json:"startMinute,omitempty"` +} + +// Network properties of a server. +type Network_STATUS_ARM struct { + // DelegatedSubnetResourceId: Delegated subnet arm resource id. This is required to be passed during create, in case we + // want the server to be VNET injected, i.e. Private access server. During update, pass this only if we want to update the + // value for Private DNS zone. + DelegatedSubnetResourceId *string `json:"delegatedSubnetResourceId,omitempty"` + + // PrivateDnsZoneArmResourceId: Private dns zone arm resource id. This is required to be passed during create, in case we + // want the server to be VNET injected, i.e. Private access server. During update, pass this only if we want to update the + // value for Private DNS zone. + PrivateDnsZoneArmResourceId *string `json:"privateDnsZoneArmResourceId,omitempty"` + + // PublicNetworkAccess: public network access is enabled or not + PublicNetworkAccess *Network_PublicNetworkAccess_STATUS `json:"publicNetworkAccess,omitempty"` +} + +// The private endpoint connection resource. +type PrivateEndpointConnection_STATUS_ARM struct { + // Id: Fully qualified resource ID for the resource. E.g. + // "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" + Id *string `json:"id,omitempty"` +} + +// Replica properties of a server +type Replica_STATUS_ARM struct { + // Capacity: Replicas allowed for a server. + Capacity *int `json:"capacity,omitempty"` + + // PromoteMode: Sets the promote mode for a replica server. This is a write only property. + PromoteMode *Replica_PromoteMode_STATUS `json:"promoteMode,omitempty"` + + // PromoteOption: Sets the promote options for a replica server. This is a write only property. + PromoteOption *Replica_PromoteOption_STATUS `json:"promoteOption,omitempty"` + + // ReplicationState: Gets the replication state of a replica server. This property is returned only for replicas api call. + // Supported values are Active, Catchup, Provisioning, Updating, Broken, Reconfiguring + ReplicationState *Replica_ReplicationState_STATUS `json:"replicationState,omitempty"` + + // Role: Used to indicate role of the server in replication set. + Role *ReplicationRole_STATUS `json:"role,omitempty"` +} + +type Sku_Tier_STATUS string + +const ( + Sku_Tier_STATUS_Burstable = Sku_Tier_STATUS("Burstable") + Sku_Tier_STATUS_GeneralPurpose = Sku_Tier_STATUS("GeneralPurpose") + Sku_Tier_STATUS_MemoryOptimized = Sku_Tier_STATUS("MemoryOptimized") +) + +// Storage properties of a server +type Storage_STATUS_ARM struct { + // AutoGrow: Flag to enable / disable Storage Auto grow for flexible server. + AutoGrow *Storage_AutoGrow_STATUS `json:"autoGrow,omitempty"` + + // Iops: Storage tier IOPS quantity. This property is required to be set for storage Type PremiumV2_LRS + Iops *int `json:"iops,omitempty"` + + // StorageSizeGB: Max storage allowed for a server. + StorageSizeGB *int `json:"storageSizeGB,omitempty"` + + // Throughput: Storage throughput for the server. This is required to be set for storage Type PremiumV2_LRS + Throughput *int `json:"throughput,omitempty"` + + // Tier: Name of storage tier for IOPS. + Tier *Storage_Tier_STATUS `json:"tier,omitempty"` + + // Type: Storage type for the server. Allowed values are Premium_LRS and PremiumV2_LRS, and default is Premium_LRS if not + // specified + Type *Storage_Type_STATUS `json:"type,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") +) + +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") +) + +type UserAssignedIdentity_Type_STATUS string + +const ( + UserAssignedIdentity_Type_STATUS_None = UserAssignedIdentity_Type_STATUS("None") + UserAssignedIdentity_Type_STATUS_UserAssigned = UserAssignedIdentity_Type_STATUS("UserAssigned") +) + +// Describes a single user-assigned identity associated with the application. +type UserIdentity_STATUS_ARM struct { + // ClientId: the client identifier of the Service Principal which this identity represents. + ClientId *string `json:"clientId,omitempty"` + + // PrincipalId: the object identifier of the Service Principal which this identity represents. + PrincipalId *string `json:"principalId,omitempty"` +} diff --git a/v2/api/dbforpostgresql/v1api20230601preview/flexible_server_status_arm_types_gen_test.go b/v2/api/dbforpostgresql/v1api20230601preview/flexible_server_status_arm_types_gen_test.go new file mode 100644 index 00000000000..2332ecc8f83 --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/flexible_server_status_arm_types_gen_test.go @@ -0,0 +1,1091 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20230601preview + +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_FlexibleServer_STATUS_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of FlexibleServer_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServer_STATUS_ARM, FlexibleServer_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServer_STATUS_ARM runs a test to see if a specific instance of FlexibleServer_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServer_STATUS_ARM(subject FlexibleServer_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServer_STATUS_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of FlexibleServer_STATUS_ARM instances for property testing - lazily instantiated by +// FlexibleServer_STATUS_ARMGenerator() +var flexibleServer_STATUS_ARMGenerator gopter.Gen + +// FlexibleServer_STATUS_ARMGenerator returns a generator of FlexibleServer_STATUS_ARM instances for property testing. +// We first initialize flexibleServer_STATUS_ARMGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func FlexibleServer_STATUS_ARMGenerator() gopter.Gen { + if flexibleServer_STATUS_ARMGenerator != nil { + return flexibleServer_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServer_STATUS_ARM(generators) + flexibleServer_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(FlexibleServer_STATUS_ARM{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServer_STATUS_ARM(generators) + AddRelatedPropertyGeneratorsForFlexibleServer_STATUS_ARM(generators) + flexibleServer_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(FlexibleServer_STATUS_ARM{}), generators) + + return flexibleServer_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForFlexibleServer_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForFlexibleServer_STATUS_ARM(gens map[string]gopter.Gen) { + gens["Id"] = gen.PtrOf(gen.AlphaString()) + gens["Location"] = gen.PtrOf(gen.AlphaString()) + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["Tags"] = gen.MapOf(gen.AlphaString(), gen.AlphaString()) + gens["Type"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForFlexibleServer_STATUS_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForFlexibleServer_STATUS_ARM(gens map[string]gopter.Gen) { + gens["Identity"] = gen.PtrOf(UserAssignedIdentity_STATUS_ARMGenerator()) + gens["Properties"] = gen.PtrOf(ServerProperties_STATUS_ARMGenerator()) + gens["Sku"] = gen.PtrOf(Sku_STATUS_ARMGenerator()) + gens["SystemData"] = gen.PtrOf(SystemData_STATUS_ARMGenerator()) +} + +func Test_ServerProperties_STATUS_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of ServerProperties_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForServerProperties_STATUS_ARM, ServerProperties_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForServerProperties_STATUS_ARM runs a test to see if a specific instance of ServerProperties_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForServerProperties_STATUS_ARM(subject ServerProperties_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual ServerProperties_STATUS_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of ServerProperties_STATUS_ARM instances for property testing - lazily instantiated by +// ServerProperties_STATUS_ARMGenerator() +var serverProperties_STATUS_ARMGenerator gopter.Gen + +// ServerProperties_STATUS_ARMGenerator returns a generator of ServerProperties_STATUS_ARM instances for property testing. +// We first initialize serverProperties_STATUS_ARMGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func ServerProperties_STATUS_ARMGenerator() gopter.Gen { + if serverProperties_STATUS_ARMGenerator != nil { + return serverProperties_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForServerProperties_STATUS_ARM(generators) + serverProperties_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(ServerProperties_STATUS_ARM{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForServerProperties_STATUS_ARM(generators) + AddRelatedPropertyGeneratorsForServerProperties_STATUS_ARM(generators) + serverProperties_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(ServerProperties_STATUS_ARM{}), generators) + + return serverProperties_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForServerProperties_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForServerProperties_STATUS_ARM(gens map[string]gopter.Gen) { + gens["AdministratorLogin"] = gen.PtrOf(gen.AlphaString()) + gens["AvailabilityZone"] = gen.PtrOf(gen.AlphaString()) + gens["CreateMode"] = gen.PtrOf(gen.OneConstOf( + ServerProperties_CreateMode_STATUS_Create, + ServerProperties_CreateMode_STATUS_Default, + ServerProperties_CreateMode_STATUS_GeoRestore, + ServerProperties_CreateMode_STATUS_PointInTimeRestore, + ServerProperties_CreateMode_STATUS_Replica, + ServerProperties_CreateMode_STATUS_ReviveDropped, + ServerProperties_CreateMode_STATUS_Update)) + gens["FullyQualifiedDomainName"] = gen.PtrOf(gen.AlphaString()) + gens["MinorVersion"] = gen.PtrOf(gen.AlphaString()) + gens["PointInTimeUTC"] = gen.PtrOf(gen.AlphaString()) + gens["ReplicaCapacity"] = gen.PtrOf(gen.Int()) + gens["ReplicationRole"] = gen.PtrOf(gen.OneConstOf( + ReplicationRole_STATUS_AsyncReplica, + ReplicationRole_STATUS_GeoAsyncReplica, + ReplicationRole_STATUS_None, + ReplicationRole_STATUS_Primary)) + gens["SourceServerResourceId"] = gen.PtrOf(gen.AlphaString()) + gens["State"] = gen.PtrOf(gen.OneConstOf( + ServerProperties_State_STATUS_Disabled, + ServerProperties_State_STATUS_Dropping, + ServerProperties_State_STATUS_Ready, + ServerProperties_State_STATUS_Starting, + ServerProperties_State_STATUS_Stopped, + ServerProperties_State_STATUS_Stopping, + ServerProperties_State_STATUS_Updating)) + gens["Version"] = gen.PtrOf(gen.OneConstOf( + ServerVersion_STATUS_11, + ServerVersion_STATUS_12, + ServerVersion_STATUS_13, + ServerVersion_STATUS_14, + ServerVersion_STATUS_15, + ServerVersion_STATUS_16)) +} + +// AddRelatedPropertyGeneratorsForServerProperties_STATUS_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForServerProperties_STATUS_ARM(gens map[string]gopter.Gen) { + gens["AuthConfig"] = gen.PtrOf(AuthConfig_STATUS_ARMGenerator()) + gens["Backup"] = gen.PtrOf(Backup_STATUS_ARMGenerator()) + gens["DataEncryption"] = gen.PtrOf(DataEncryption_STATUS_ARMGenerator()) + gens["HighAvailability"] = gen.PtrOf(HighAvailability_STATUS_ARMGenerator()) + gens["MaintenanceWindow"] = gen.PtrOf(MaintenanceWindow_STATUS_ARMGenerator()) + gens["Network"] = gen.PtrOf(Network_STATUS_ARMGenerator()) + gens["PrivateEndpointConnections"] = gen.SliceOf(PrivateEndpointConnection_STATUS_ARMGenerator()) + gens["Replica"] = gen.PtrOf(Replica_STATUS_ARMGenerator()) + gens["Storage"] = gen.PtrOf(Storage_STATUS_ARMGenerator()) +} + +func Test_Sku_STATUS_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Sku_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForSku_STATUS_ARM, Sku_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForSku_STATUS_ARM runs a test to see if a specific instance of Sku_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForSku_STATUS_ARM(subject Sku_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Sku_STATUS_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Sku_STATUS_ARM instances for property testing - lazily instantiated by Sku_STATUS_ARMGenerator() +var sku_STATUS_ARMGenerator gopter.Gen + +// Sku_STATUS_ARMGenerator returns a generator of Sku_STATUS_ARM instances for property testing. +func Sku_STATUS_ARMGenerator() gopter.Gen { + if sku_STATUS_ARMGenerator != nil { + return sku_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForSku_STATUS_ARM(generators) + sku_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(Sku_STATUS_ARM{}), generators) + + return sku_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForSku_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForSku_STATUS_ARM(gens map[string]gopter.Gen) { + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["Tier"] = gen.PtrOf(gen.OneConstOf(Sku_Tier_STATUS_Burstable, Sku_Tier_STATUS_GeneralPurpose, Sku_Tier_STATUS_MemoryOptimized)) +} + +func Test_SystemData_STATUS_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of SystemData_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForSystemData_STATUS_ARM, SystemData_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForSystemData_STATUS_ARM runs a test to see if a specific instance of SystemData_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForSystemData_STATUS_ARM(subject SystemData_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual SystemData_STATUS_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of SystemData_STATUS_ARM instances for property testing - lazily instantiated by +// SystemData_STATUS_ARMGenerator() +var systemData_STATUS_ARMGenerator gopter.Gen + +// SystemData_STATUS_ARMGenerator returns a generator of SystemData_STATUS_ARM instances for property testing. +func SystemData_STATUS_ARMGenerator() gopter.Gen { + if systemData_STATUS_ARMGenerator != nil { + return systemData_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForSystemData_STATUS_ARM(generators) + systemData_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(SystemData_STATUS_ARM{}), generators) + + return systemData_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForSystemData_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForSystemData_STATUS_ARM(gens map[string]gopter.Gen) { + gens["CreatedAt"] = gen.PtrOf(gen.AlphaString()) + gens["CreatedBy"] = gen.PtrOf(gen.AlphaString()) + gens["CreatedByType"] = gen.PtrOf(gen.OneConstOf( + SystemData_CreatedByType_STATUS_Application, + SystemData_CreatedByType_STATUS_Key, + SystemData_CreatedByType_STATUS_ManagedIdentity, + SystemData_CreatedByType_STATUS_User)) + gens["LastModifiedAt"] = gen.PtrOf(gen.AlphaString()) + gens["LastModifiedBy"] = gen.PtrOf(gen.AlphaString()) + gens["LastModifiedByType"] = gen.PtrOf(gen.OneConstOf( + SystemData_LastModifiedByType_STATUS_Application, + SystemData_LastModifiedByType_STATUS_Key, + SystemData_LastModifiedByType_STATUS_ManagedIdentity, + SystemData_LastModifiedByType_STATUS_User)) +} + +func Test_UserAssignedIdentity_STATUS_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of UserAssignedIdentity_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForUserAssignedIdentity_STATUS_ARM, UserAssignedIdentity_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForUserAssignedIdentity_STATUS_ARM runs a test to see if a specific instance of UserAssignedIdentity_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForUserAssignedIdentity_STATUS_ARM(subject UserAssignedIdentity_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual UserAssignedIdentity_STATUS_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of UserAssignedIdentity_STATUS_ARM instances for property testing - lazily instantiated by +// UserAssignedIdentity_STATUS_ARMGenerator() +var userAssignedIdentity_STATUS_ARMGenerator gopter.Gen + +// UserAssignedIdentity_STATUS_ARMGenerator returns a generator of UserAssignedIdentity_STATUS_ARM instances for property testing. +// We first initialize userAssignedIdentity_STATUS_ARMGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func UserAssignedIdentity_STATUS_ARMGenerator() gopter.Gen { + if userAssignedIdentity_STATUS_ARMGenerator != nil { + return userAssignedIdentity_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForUserAssignedIdentity_STATUS_ARM(generators) + userAssignedIdentity_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(UserAssignedIdentity_STATUS_ARM{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForUserAssignedIdentity_STATUS_ARM(generators) + AddRelatedPropertyGeneratorsForUserAssignedIdentity_STATUS_ARM(generators) + userAssignedIdentity_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(UserAssignedIdentity_STATUS_ARM{}), generators) + + return userAssignedIdentity_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForUserAssignedIdentity_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForUserAssignedIdentity_STATUS_ARM(gens map[string]gopter.Gen) { + gens["TenantId"] = gen.PtrOf(gen.AlphaString()) + gens["Type"] = gen.PtrOf(gen.OneConstOf(UserAssignedIdentity_Type_STATUS_None, UserAssignedIdentity_Type_STATUS_UserAssigned)) +} + +// AddRelatedPropertyGeneratorsForUserAssignedIdentity_STATUS_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForUserAssignedIdentity_STATUS_ARM(gens map[string]gopter.Gen) { + gens["UserAssignedIdentities"] = gen.MapOf(gen.AlphaString(), UserIdentity_STATUS_ARMGenerator()) +} + +func Test_AuthConfig_STATUS_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of AuthConfig_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForAuthConfig_STATUS_ARM, AuthConfig_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForAuthConfig_STATUS_ARM runs a test to see if a specific instance of AuthConfig_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForAuthConfig_STATUS_ARM(subject AuthConfig_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual AuthConfig_STATUS_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of AuthConfig_STATUS_ARM instances for property testing - lazily instantiated by +// AuthConfig_STATUS_ARMGenerator() +var authConfig_STATUS_ARMGenerator gopter.Gen + +// AuthConfig_STATUS_ARMGenerator returns a generator of AuthConfig_STATUS_ARM instances for property testing. +func AuthConfig_STATUS_ARMGenerator() gopter.Gen { + if authConfig_STATUS_ARMGenerator != nil { + return authConfig_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForAuthConfig_STATUS_ARM(generators) + authConfig_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(AuthConfig_STATUS_ARM{}), generators) + + return authConfig_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForAuthConfig_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForAuthConfig_STATUS_ARM(gens map[string]gopter.Gen) { + gens["ActiveDirectoryAuth"] = gen.PtrOf(gen.OneConstOf(AuthConfig_ActiveDirectoryAuth_STATUS_Disabled, AuthConfig_ActiveDirectoryAuth_STATUS_Enabled)) + gens["PasswordAuth"] = gen.PtrOf(gen.OneConstOf(AuthConfig_PasswordAuth_STATUS_Disabled, AuthConfig_PasswordAuth_STATUS_Enabled)) + gens["TenantId"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_Backup_STATUS_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Backup_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackup_STATUS_ARM, Backup_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackup_STATUS_ARM runs a test to see if a specific instance of Backup_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForBackup_STATUS_ARM(subject Backup_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Backup_STATUS_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Backup_STATUS_ARM instances for property testing - lazily instantiated by Backup_STATUS_ARMGenerator() +var backup_STATUS_ARMGenerator gopter.Gen + +// Backup_STATUS_ARMGenerator returns a generator of Backup_STATUS_ARM instances for property testing. +func Backup_STATUS_ARMGenerator() gopter.Gen { + if backup_STATUS_ARMGenerator != nil { + return backup_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackup_STATUS_ARM(generators) + backup_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(Backup_STATUS_ARM{}), generators) + + return backup_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForBackup_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackup_STATUS_ARM(gens map[string]gopter.Gen) { + gens["BackupRetentionDays"] = gen.PtrOf(gen.Int()) + gens["EarliestRestoreDate"] = gen.PtrOf(gen.AlphaString()) + gens["GeoRedundantBackup"] = gen.PtrOf(gen.OneConstOf(Backup_GeoRedundantBackup_STATUS_Disabled, Backup_GeoRedundantBackup_STATUS_Enabled)) +} + +func Test_DataEncryption_STATUS_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of DataEncryption_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForDataEncryption_STATUS_ARM, DataEncryption_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForDataEncryption_STATUS_ARM runs a test to see if a specific instance of DataEncryption_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForDataEncryption_STATUS_ARM(subject DataEncryption_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual DataEncryption_STATUS_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of DataEncryption_STATUS_ARM instances for property testing - lazily instantiated by +// DataEncryption_STATUS_ARMGenerator() +var dataEncryption_STATUS_ARMGenerator gopter.Gen + +// DataEncryption_STATUS_ARMGenerator returns a generator of DataEncryption_STATUS_ARM instances for property testing. +func DataEncryption_STATUS_ARMGenerator() gopter.Gen { + if dataEncryption_STATUS_ARMGenerator != nil { + return dataEncryption_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForDataEncryption_STATUS_ARM(generators) + dataEncryption_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(DataEncryption_STATUS_ARM{}), generators) + + return dataEncryption_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForDataEncryption_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForDataEncryption_STATUS_ARM(gens map[string]gopter.Gen) { + gens["GeoBackupEncryptionKeyStatus"] = gen.PtrOf(gen.OneConstOf(DataEncryption_GeoBackupEncryptionKeyStatus_STATUS_Invalid, DataEncryption_GeoBackupEncryptionKeyStatus_STATUS_Valid)) + gens["GeoBackupKeyURI"] = gen.PtrOf(gen.AlphaString()) + gens["GeoBackupUserAssignedIdentityId"] = gen.PtrOf(gen.AlphaString()) + gens["PrimaryEncryptionKeyStatus"] = gen.PtrOf(gen.OneConstOf(DataEncryption_PrimaryEncryptionKeyStatus_STATUS_Invalid, DataEncryption_PrimaryEncryptionKeyStatus_STATUS_Valid)) + gens["PrimaryKeyURI"] = gen.PtrOf(gen.AlphaString()) + gens["PrimaryUserAssignedIdentityId"] = gen.PtrOf(gen.AlphaString()) + gens["Type"] = gen.PtrOf(gen.OneConstOf(DataEncryption_Type_STATUS_AzureKeyVault, DataEncryption_Type_STATUS_SystemManaged)) +} + +func Test_HighAvailability_STATUS_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of HighAvailability_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForHighAvailability_STATUS_ARM, HighAvailability_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForHighAvailability_STATUS_ARM runs a test to see if a specific instance of HighAvailability_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForHighAvailability_STATUS_ARM(subject HighAvailability_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual HighAvailability_STATUS_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of HighAvailability_STATUS_ARM instances for property testing - lazily instantiated by +// HighAvailability_STATUS_ARMGenerator() +var highAvailability_STATUS_ARMGenerator gopter.Gen + +// HighAvailability_STATUS_ARMGenerator returns a generator of HighAvailability_STATUS_ARM instances for property testing. +func HighAvailability_STATUS_ARMGenerator() gopter.Gen { + if highAvailability_STATUS_ARMGenerator != nil { + return highAvailability_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForHighAvailability_STATUS_ARM(generators) + highAvailability_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(HighAvailability_STATUS_ARM{}), generators) + + return highAvailability_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForHighAvailability_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForHighAvailability_STATUS_ARM(gens map[string]gopter.Gen) { + gens["Mode"] = gen.PtrOf(gen.OneConstOf(HighAvailability_Mode_STATUS_Disabled, HighAvailability_Mode_STATUS_SameZone, HighAvailability_Mode_STATUS_ZoneRedundant)) + gens["StandbyAvailabilityZone"] = gen.PtrOf(gen.AlphaString()) + gens["State"] = gen.PtrOf(gen.OneConstOf( + HighAvailability_State_STATUS_CreatingStandby, + HighAvailability_State_STATUS_FailingOver, + HighAvailability_State_STATUS_Healthy, + HighAvailability_State_STATUS_NotEnabled, + HighAvailability_State_STATUS_RemovingStandby, + HighAvailability_State_STATUS_ReplicatingData)) +} + +func Test_MaintenanceWindow_STATUS_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of MaintenanceWindow_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForMaintenanceWindow_STATUS_ARM, MaintenanceWindow_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForMaintenanceWindow_STATUS_ARM runs a test to see if a specific instance of MaintenanceWindow_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForMaintenanceWindow_STATUS_ARM(subject MaintenanceWindow_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual MaintenanceWindow_STATUS_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of MaintenanceWindow_STATUS_ARM instances for property testing - lazily instantiated by +// MaintenanceWindow_STATUS_ARMGenerator() +var maintenanceWindow_STATUS_ARMGenerator gopter.Gen + +// MaintenanceWindow_STATUS_ARMGenerator returns a generator of MaintenanceWindow_STATUS_ARM instances for property testing. +func MaintenanceWindow_STATUS_ARMGenerator() gopter.Gen { + if maintenanceWindow_STATUS_ARMGenerator != nil { + return maintenanceWindow_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForMaintenanceWindow_STATUS_ARM(generators) + maintenanceWindow_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(MaintenanceWindow_STATUS_ARM{}), generators) + + return maintenanceWindow_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForMaintenanceWindow_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForMaintenanceWindow_STATUS_ARM(gens map[string]gopter.Gen) { + gens["CustomWindow"] = gen.PtrOf(gen.AlphaString()) + gens["DayOfWeek"] = gen.PtrOf(gen.Int()) + gens["StartHour"] = gen.PtrOf(gen.Int()) + gens["StartMinute"] = gen.PtrOf(gen.Int()) +} + +func Test_Network_STATUS_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Network_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForNetwork_STATUS_ARM, Network_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForNetwork_STATUS_ARM runs a test to see if a specific instance of Network_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForNetwork_STATUS_ARM(subject Network_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Network_STATUS_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Network_STATUS_ARM instances for property testing - lazily instantiated by Network_STATUS_ARMGenerator() +var network_STATUS_ARMGenerator gopter.Gen + +// Network_STATUS_ARMGenerator returns a generator of Network_STATUS_ARM instances for property testing. +func Network_STATUS_ARMGenerator() gopter.Gen { + if network_STATUS_ARMGenerator != nil { + return network_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForNetwork_STATUS_ARM(generators) + network_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(Network_STATUS_ARM{}), generators) + + return network_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForNetwork_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForNetwork_STATUS_ARM(gens map[string]gopter.Gen) { + gens["DelegatedSubnetResourceId"] = gen.PtrOf(gen.AlphaString()) + gens["PrivateDnsZoneArmResourceId"] = gen.PtrOf(gen.AlphaString()) + gens["PublicNetworkAccess"] = gen.PtrOf(gen.OneConstOf(Network_PublicNetworkAccess_STATUS_Disabled, Network_PublicNetworkAccess_STATUS_Enabled)) +} + +func Test_PrivateEndpointConnection_STATUS_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of PrivateEndpointConnection_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForPrivateEndpointConnection_STATUS_ARM, PrivateEndpointConnection_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForPrivateEndpointConnection_STATUS_ARM runs a test to see if a specific instance of PrivateEndpointConnection_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForPrivateEndpointConnection_STATUS_ARM(subject PrivateEndpointConnection_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual PrivateEndpointConnection_STATUS_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of PrivateEndpointConnection_STATUS_ARM instances for property testing - lazily instantiated by +// PrivateEndpointConnection_STATUS_ARMGenerator() +var privateEndpointConnection_STATUS_ARMGenerator gopter.Gen + +// PrivateEndpointConnection_STATUS_ARMGenerator returns a generator of PrivateEndpointConnection_STATUS_ARM instances for property testing. +func PrivateEndpointConnection_STATUS_ARMGenerator() gopter.Gen { + if privateEndpointConnection_STATUS_ARMGenerator != nil { + return privateEndpointConnection_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForPrivateEndpointConnection_STATUS_ARM(generators) + privateEndpointConnection_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(PrivateEndpointConnection_STATUS_ARM{}), generators) + + return privateEndpointConnection_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForPrivateEndpointConnection_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForPrivateEndpointConnection_STATUS_ARM(gens map[string]gopter.Gen) { + gens["Id"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_Replica_STATUS_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Replica_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForReplica_STATUS_ARM, Replica_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForReplica_STATUS_ARM runs a test to see if a specific instance of Replica_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForReplica_STATUS_ARM(subject Replica_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Replica_STATUS_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Replica_STATUS_ARM instances for property testing - lazily instantiated by Replica_STATUS_ARMGenerator() +var replica_STATUS_ARMGenerator gopter.Gen + +// Replica_STATUS_ARMGenerator returns a generator of Replica_STATUS_ARM instances for property testing. +func Replica_STATUS_ARMGenerator() gopter.Gen { + if replica_STATUS_ARMGenerator != nil { + return replica_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForReplica_STATUS_ARM(generators) + replica_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(Replica_STATUS_ARM{}), generators) + + return replica_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForReplica_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForReplica_STATUS_ARM(gens map[string]gopter.Gen) { + gens["Capacity"] = gen.PtrOf(gen.Int()) + gens["PromoteMode"] = gen.PtrOf(gen.OneConstOf(Replica_PromoteMode_STATUS_Standalone, Replica_PromoteMode_STATUS_Switchover)) + gens["PromoteOption"] = gen.PtrOf(gen.OneConstOf(Replica_PromoteOption_STATUS_Forced, Replica_PromoteOption_STATUS_Planned)) + gens["ReplicationState"] = gen.PtrOf(gen.OneConstOf( + Replica_ReplicationState_STATUS_Active, + Replica_ReplicationState_STATUS_Broken, + Replica_ReplicationState_STATUS_Catchup, + Replica_ReplicationState_STATUS_Provisioning, + Replica_ReplicationState_STATUS_Reconfiguring, + Replica_ReplicationState_STATUS_Updating)) + gens["Role"] = gen.PtrOf(gen.OneConstOf( + ReplicationRole_STATUS_AsyncReplica, + ReplicationRole_STATUS_GeoAsyncReplica, + ReplicationRole_STATUS_None, + ReplicationRole_STATUS_Primary)) +} + +func Test_Storage_STATUS_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Storage_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForStorage_STATUS_ARM, Storage_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForStorage_STATUS_ARM runs a test to see if a specific instance of Storage_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForStorage_STATUS_ARM(subject Storage_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Storage_STATUS_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Storage_STATUS_ARM instances for property testing - lazily instantiated by Storage_STATUS_ARMGenerator() +var storage_STATUS_ARMGenerator gopter.Gen + +// Storage_STATUS_ARMGenerator returns a generator of Storage_STATUS_ARM instances for property testing. +func Storage_STATUS_ARMGenerator() gopter.Gen { + if storage_STATUS_ARMGenerator != nil { + return storage_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForStorage_STATUS_ARM(generators) + storage_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(Storage_STATUS_ARM{}), generators) + + return storage_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForStorage_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForStorage_STATUS_ARM(gens map[string]gopter.Gen) { + gens["AutoGrow"] = gen.PtrOf(gen.OneConstOf(Storage_AutoGrow_STATUS_Disabled, Storage_AutoGrow_STATUS_Enabled)) + gens["Iops"] = gen.PtrOf(gen.Int()) + gens["StorageSizeGB"] = gen.PtrOf(gen.Int()) + gens["Throughput"] = gen.PtrOf(gen.Int()) + gens["Tier"] = gen.PtrOf(gen.OneConstOf( + Storage_Tier_STATUS_P1, + Storage_Tier_STATUS_P10, + Storage_Tier_STATUS_P15, + Storage_Tier_STATUS_P2, + Storage_Tier_STATUS_P20, + Storage_Tier_STATUS_P3, + Storage_Tier_STATUS_P30, + Storage_Tier_STATUS_P4, + Storage_Tier_STATUS_P40, + Storage_Tier_STATUS_P50, + Storage_Tier_STATUS_P6, + Storage_Tier_STATUS_P60, + Storage_Tier_STATUS_P70, + Storage_Tier_STATUS_P80)) + gens["Type"] = gen.PtrOf(gen.OneConstOf(Storage_Type_STATUS_PremiumV2_LRS, Storage_Type_STATUS_Premium_LRS)) +} + +func Test_UserIdentity_STATUS_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of UserIdentity_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForUserIdentity_STATUS_ARM, UserIdentity_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForUserIdentity_STATUS_ARM runs a test to see if a specific instance of UserIdentity_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForUserIdentity_STATUS_ARM(subject UserIdentity_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual UserIdentity_STATUS_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of UserIdentity_STATUS_ARM instances for property testing - lazily instantiated by +// UserIdentity_STATUS_ARMGenerator() +var userIdentity_STATUS_ARMGenerator gopter.Gen + +// UserIdentity_STATUS_ARMGenerator returns a generator of UserIdentity_STATUS_ARM instances for property testing. +func UserIdentity_STATUS_ARMGenerator() gopter.Gen { + if userIdentity_STATUS_ARMGenerator != nil { + return userIdentity_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForUserIdentity_STATUS_ARM(generators) + userIdentity_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(UserIdentity_STATUS_ARM{}), generators) + + return userIdentity_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForUserIdentity_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForUserIdentity_STATUS_ARM(gens map[string]gopter.Gen) { + gens["ClientId"] = gen.PtrOf(gen.AlphaString()) + gens["PrincipalId"] = gen.PtrOf(gen.AlphaString()) +} diff --git a/v2/api/dbforpostgresql/v1api20230601preview/flexible_server_types_gen.go b/v2/api/dbforpostgresql/v1api20230601preview/flexible_server_types_gen.go new file mode 100644 index 00000000000..1ec612c9644 --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/flexible_server_types_gen.go @@ -0,0 +1,5835 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20230601preview + +import ( + "context" + "fmt" + v20230601ps "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20230601preview/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/go-logr/logr" + "github.com/pkg/errors" + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/runtime" + "k8s.io/apimachinery/pkg/runtime/schema" + "sigs.k8s.io/controller-runtime/pkg/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: /postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2023-06-01-preview/FlexibleServers.json +// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/flexibleServers/{serverName} +type FlexibleServer struct { + metav1.TypeMeta `json:",inline"` + metav1.ObjectMeta `json:"metadata,omitempty"` + Spec FlexibleServer_Spec `json:"spec,omitempty"` + Status FlexibleServer_STATUS `json:"status,omitempty"` +} + +var _ conditions.Conditioner = &FlexibleServer{} + +// GetConditions returns the conditions of the resource +func (server *FlexibleServer) GetConditions() conditions.Conditions { + return server.Status.Conditions +} + +// SetConditions sets the conditions on the resource status +func (server *FlexibleServer) SetConditions(conditions conditions.Conditions) { + server.Status.Conditions = conditions +} + +var _ conversion.Convertible = &FlexibleServer{} + +// ConvertFrom populates our FlexibleServer from the provided hub FlexibleServer +func (server *FlexibleServer) ConvertFrom(hub conversion.Hub) error { + // intermediate variable for conversion + var source v20230601ps.FlexibleServer + + err := source.ConvertFrom(hub) + if err != nil { + return errors.Wrap(err, "converting from hub to source") + } + + err = server.AssignProperties_From_FlexibleServer(&source) + if err != nil { + return errors.Wrap(err, "converting from source to server") + } + + return nil +} + +// ConvertTo populates the provided hub FlexibleServer from our FlexibleServer +func (server *FlexibleServer) ConvertTo(hub conversion.Hub) error { + // intermediate variable for conversion + var destination v20230601ps.FlexibleServer + err := server.AssignProperties_To_FlexibleServer(&destination) + if err != nil { + return errors.Wrap(err, "converting to destination from server") + } + err = destination.ConvertTo(hub) + if err != nil { + return errors.Wrap(err, "converting from destination to hub") + } + + return nil +} + +// +kubebuilder:webhook:path=/mutate-dbforpostgresql-azure-com-v1api20230601preview-flexibleserver,mutating=true,sideEffects=None,matchPolicy=Exact,failurePolicy=fail,groups=dbforpostgresql.azure.com,resources=flexibleservers,verbs=create;update,versions=v1api20230601preview,name=default.v1api20230601preview.flexibleservers.dbforpostgresql.azure.com,admissionReviewVersions=v1 + +var _ admission.Defaulter = &FlexibleServer{} + +// Default applies defaults to the FlexibleServer resource +func (server *FlexibleServer) Default() { + server.defaultImpl() + var temp any = server + if runtimeDefaulter, ok := temp.(genruntime.Defaulter); ok { + runtimeDefaulter.CustomDefault() + } +} + +// defaultAzureName defaults the Azure name of the resource to the Kubernetes name +func (server *FlexibleServer) defaultAzureName() { + if server.Spec.AzureName == "" { + server.Spec.AzureName = server.Name + } +} + +// defaultImpl applies the code generated defaults to the FlexibleServer resource +func (server *FlexibleServer) defaultImpl() { server.defaultAzureName() } + +var _ genruntime.KubernetesExporter = &FlexibleServer{} + +// ExportKubernetesResources defines a resource which can create other resources in Kubernetes. +func (server *FlexibleServer) ExportKubernetesResources(_ context.Context, _ genruntime.MetaObject, _ *genericarmclient.GenericClient, _ logr.Logger) ([]client.Object, error) { + collector := configmaps.NewCollector(server.Namespace) + if server.Spec.OperatorSpec != nil && server.Spec.OperatorSpec.ConfigMaps != nil { + if server.Status.FullyQualifiedDomainName != nil { + collector.AddValue(server.Spec.OperatorSpec.ConfigMaps.FullyQualifiedDomainName, *server.Status.FullyQualifiedDomainName) + } + } + result, err := collector.Values() + if err != nil { + return nil, err + } + return configmaps.SliceToClientObjectSlice(result), nil +} + +var _ genruntime.KubernetesResource = &FlexibleServer{} + +// AzureName returns the Azure name of the resource +func (server *FlexibleServer) AzureName() string { + return server.Spec.AzureName +} + +// GetAPIVersion returns the ARM API version of the resource. This is always "2023-06-01-preview" +func (server FlexibleServer) GetAPIVersion() string { + return string(APIVersion_Value) +} + +// GetResourceScope returns the scope of the resource +func (server *FlexibleServer) GetResourceScope() genruntime.ResourceScope { + return genruntime.ResourceScopeResourceGroup +} + +// GetSpec returns the specification of this resource +func (server *FlexibleServer) GetSpec() genruntime.ConvertibleSpec { + return &server.Spec +} + +// GetStatus returns the status of this resource +func (server *FlexibleServer) GetStatus() genruntime.ConvertibleStatus { + return &server.Status +} + +// GetSupportedOperations returns the operations supported by the resource +func (server *FlexibleServer) GetSupportedOperations() []genruntime.ResourceOperation { + return []genruntime.ResourceOperation{ + genruntime.ResourceOperationDelete, + genruntime.ResourceOperationGet, + genruntime.ResourceOperationPut, + } +} + +// GetType returns the ARM Type of the resource. This is always "Microsoft.DBforPostgreSQL/flexibleServers" +func (server *FlexibleServer) GetType() string { + return "Microsoft.DBforPostgreSQL/flexibleServers" +} + +// NewEmptyStatus returns a new empty (blank) status +func (server *FlexibleServer) NewEmptyStatus() genruntime.ConvertibleStatus { + return &FlexibleServer_STATUS{} +} + +// Owner returns the ResourceReference of the owner +func (server *FlexibleServer) Owner() *genruntime.ResourceReference { + group, kind := genruntime.LookupOwnerGroupKind(server.Spec) + return server.Spec.Owner.AsResourceReference(group, kind) +} + +// SetStatus sets the status of this resource +func (server *FlexibleServer) SetStatus(status genruntime.ConvertibleStatus) error { + // If we have exactly the right type of status, assign it + if st, ok := status.(*FlexibleServer_STATUS); ok { + server.Status = *st + return nil + } + + // Convert status to required version + var st FlexibleServer_STATUS + err := status.ConvertStatusTo(&st) + if err != nil { + return errors.Wrap(err, "failed to convert status") + } + + server.Status = st + return nil +} + +// +kubebuilder:webhook:path=/validate-dbforpostgresql-azure-com-v1api20230601preview-flexibleserver,mutating=false,sideEffects=None,matchPolicy=Exact,failurePolicy=fail,groups=dbforpostgresql.azure.com,resources=flexibleservers,verbs=create;update,versions=v1api20230601preview,name=validate.v1api20230601preview.flexibleservers.dbforpostgresql.azure.com,admissionReviewVersions=v1 + +var _ admission.Validator = &FlexibleServer{} + +// ValidateCreate validates the creation of the resource +func (server *FlexibleServer) ValidateCreate() (admission.Warnings, error) { + validations := server.createValidations() + var temp any = server + if runtimeValidator, ok := temp.(genruntime.Validator); ok { + validations = append(validations, runtimeValidator.CreateValidations()...) + } + return genruntime.ValidateCreate(validations) +} + +// ValidateDelete validates the deletion of the resource +func (server *FlexibleServer) ValidateDelete() (admission.Warnings, error) { + validations := server.deleteValidations() + var temp any = server + if runtimeValidator, ok := temp.(genruntime.Validator); ok { + validations = append(validations, runtimeValidator.DeleteValidations()...) + } + return genruntime.ValidateDelete(validations) +} + +// ValidateUpdate validates an update of the resource +func (server *FlexibleServer) ValidateUpdate(old runtime.Object) (admission.Warnings, error) { + validations := server.updateValidations() + var temp any = server + 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 (server *FlexibleServer) createValidations() []func() (admission.Warnings, error) { + return []func() (admission.Warnings, error){server.validateResourceReferences, server.validateOwnerReference, server.validateSecretDestinations, server.validateConfigMapDestinations} +} + +// deleteValidations validates the deletion of the resource +func (server *FlexibleServer) deleteValidations() []func() (admission.Warnings, error) { + return nil +} + +// updateValidations validates the update of the resource +func (server *FlexibleServer) updateValidations() []func(old runtime.Object) (admission.Warnings, error) { + return []func(old runtime.Object) (admission.Warnings, error){ + func(old runtime.Object) (admission.Warnings, error) { + return server.validateResourceReferences() + }, + server.validateWriteOnceProperties, + func(old runtime.Object) (admission.Warnings, error) { + return server.validateOwnerReference() + }, + func(old runtime.Object) (admission.Warnings, error) { + return server.validateSecretDestinations() + }, + func(old runtime.Object) (admission.Warnings, error) { + return server.validateConfigMapDestinations() + }, + } +} + +// validateConfigMapDestinations validates there are no colliding genruntime.ConfigMapDestinations +func (server *FlexibleServer) validateConfigMapDestinations() (admission.Warnings, error) { + if server.Spec.OperatorSpec == nil { + return nil, nil + } + if server.Spec.OperatorSpec.ConfigMaps == nil { + return nil, nil + } + toValidate := []*genruntime.ConfigMapDestination{ + server.Spec.OperatorSpec.ConfigMaps.FullyQualifiedDomainName, + } + return genruntime.ValidateConfigMapDestinations(toValidate) +} + +// validateOwnerReference validates the owner field +func (server *FlexibleServer) validateOwnerReference() (admission.Warnings, error) { + return genruntime.ValidateOwner(server) +} + +// validateResourceReferences validates all resource references +func (server *FlexibleServer) validateResourceReferences() (admission.Warnings, error) { + refs, err := reflecthelpers.FindResourceReferences(&server.Spec) + if err != nil { + return nil, err + } + return genruntime.ValidateResourceReferences(refs) +} + +// validateSecretDestinations validates there are no colliding genruntime.SecretDestination's +func (server *FlexibleServer) validateSecretDestinations() (admission.Warnings, error) { + if server.Spec.OperatorSpec == nil { + return nil, nil + } + if server.Spec.OperatorSpec.Secrets == nil { + return nil, nil + } + toValidate := []*genruntime.SecretDestination{ + server.Spec.OperatorSpec.Secrets.FullyQualifiedDomainName, + } + return genruntime.ValidateSecretDestinations(toValidate) +} + +// validateWriteOnceProperties validates all WriteOnce properties +func (server *FlexibleServer) validateWriteOnceProperties(old runtime.Object) (admission.Warnings, error) { + oldObj, ok := old.(*FlexibleServer) + if !ok { + return nil, nil + } + + return genruntime.ValidateWriteOnceProperties(oldObj, server) +} + +// AssignProperties_From_FlexibleServer populates our FlexibleServer from the provided source FlexibleServer +func (server *FlexibleServer) AssignProperties_From_FlexibleServer(source *v20230601ps.FlexibleServer) error { + + // ObjectMeta + server.ObjectMeta = *source.ObjectMeta.DeepCopy() + + // Spec + var spec FlexibleServer_Spec + err := spec.AssignProperties_From_FlexibleServer_Spec(&source.Spec) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_FlexibleServer_Spec() to populate field Spec") + } + server.Spec = spec + + // Status + var status FlexibleServer_STATUS + err = status.AssignProperties_From_FlexibleServer_STATUS(&source.Status) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_FlexibleServer_STATUS() to populate field Status") + } + server.Status = status + + // No error + return nil +} + +// AssignProperties_To_FlexibleServer populates the provided destination FlexibleServer from our FlexibleServer +func (server *FlexibleServer) AssignProperties_To_FlexibleServer(destination *v20230601ps.FlexibleServer) error { + + // ObjectMeta + destination.ObjectMeta = *server.ObjectMeta.DeepCopy() + + // Spec + var spec v20230601ps.FlexibleServer_Spec + err := server.Spec.AssignProperties_To_FlexibleServer_Spec(&spec) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_FlexibleServer_Spec() to populate field Spec") + } + destination.Spec = spec + + // Status + var status v20230601ps.FlexibleServer_STATUS + err = server.Status.AssignProperties_To_FlexibleServer_STATUS(&status) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_FlexibleServer_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 (server *FlexibleServer) OriginalGVK() *schema.GroupVersionKind { + return &schema.GroupVersionKind{ + Group: GroupVersion.Group, + Version: server.Spec.OriginalVersion(), + Kind: "FlexibleServer", + } +} + +// +kubebuilder:object:root=true +// Generator information: +// - Generated from: /postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2023-06-01-preview/FlexibleServers.json +// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/flexibleServers/{serverName} +type FlexibleServerList struct { + metav1.TypeMeta `json:",inline"` + metav1.ListMeta `json:"metadata,omitempty"` + Items []FlexibleServer `json:"items"` +} + +// +kubebuilder:validation:Enum={"2023-06-01-preview"} +type APIVersion string + +const APIVersion_Value = APIVersion("2023-06-01-preview") + +type FlexibleServer_Spec struct { + // AdministratorLogin: The administrator's login name of a server. Can only be specified when the server is being created + // (and is required for creation). + AdministratorLogin *string `json:"administratorLogin,omitempty"` + + // AdministratorLoginPassword: The administrator login password (required for server creation). + AdministratorLoginPassword *genruntime.SecretReference `json:"administratorLoginPassword,omitempty"` + + // AuthConfig: AuthConfig properties of a server. + AuthConfig *AuthConfig `json:"authConfig,omitempty"` + + // AvailabilityZone: availability zone information of the server. + AvailabilityZone *string `json:"availabilityZone,omitempty"` + + // +kubebuilder:validation:MaxLength=63 + // +kubebuilder:validation:MinLength=3 + // +kubebuilder:validation:Pattern="^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*" + // 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"` + + // Backup: Backup properties of a server. + Backup *Backup `json:"backup,omitempty"` + + // CreateMode: The mode to create a new PostgreSQL server. + CreateMode *ServerProperties_CreateMode `json:"createMode,omitempty"` + + // DataEncryption: Data encryption properties of a server. + DataEncryption *DataEncryption `json:"dataEncryption,omitempty"` + + // HighAvailability: High availability properties of a server. + HighAvailability *HighAvailability `json:"highAvailability,omitempty"` + + // Identity: Describes the identity of the application. + Identity *UserAssignedIdentity `json:"identity,omitempty"` + + // +kubebuilder:validation:Required + // Location: The geo-location where the resource lives + Location *string `json:"location,omitempty"` + + // MaintenanceWindow: Maintenance window properties of a server. + MaintenanceWindow *MaintenanceWindow `json:"maintenanceWindow,omitempty"` + + // Network: Network properties of a server. This Network property is required to be passed only in case you want the server + // to be Private access server. + Network *Network `json:"network,omitempty"` + + // OperatorSpec: The specification for configuring operator behavior. This field is interpreted by the operator and not + // passed directly to Azure + OperatorSpec *FlexibleServerOperatorSpec `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"` + + // PointInTimeUTC: Restore point creation time (ISO8601 format), specifying the time to restore from. It's required when + // 'createMode' is 'PointInTimeRestore' or 'GeoRestore' or 'ReviveDropped'. + PointInTimeUTC *string `json:"pointInTimeUTC,omitempty"` + + // Replica: Replica properties of a server. These Replica properties are required to be passed only in case you want to + // Promote a server. + Replica *Replica `json:"replica,omitempty"` + + // ReplicationRole: Replication role of the server + ReplicationRole *ReplicationRole `json:"replicationRole,omitempty"` + + // Sku: The SKU (pricing tier) of the server. + Sku *Sku `json:"sku,omitempty"` + + // SourceServerResourceReference: The source server resource ID to restore from. It's required when 'createMode' is + // 'PointInTimeRestore' or 'GeoRestore' or 'Replica' or 'ReviveDropped'. This property is returned only for Replica server + SourceServerResourceReference *genruntime.ResourceReference `armReference:"SourceServerResourceId" json:"sourceServerResourceReference,omitempty"` + + // Storage: Storage properties of a server. + Storage *Storage `json:"storage,omitempty"` + + // Tags: Resource tags. + Tags map[string]string `json:"tags,omitempty"` + + // Version: PostgreSQL Server version. + Version *ServerVersion `json:"version,omitempty"` +} + +var _ genruntime.ARMTransformer = &FlexibleServer_Spec{} + +// ConvertToARM converts from a Kubernetes CRD object to an ARM object +func (server *FlexibleServer_Spec) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) { + if server == nil { + return nil, nil + } + result := &FlexibleServer_Spec_ARM{} + + // Set property "Identity": + if server.Identity != nil { + identity_ARM, err := (*server.Identity).ConvertToARM(resolved) + if err != nil { + return nil, err + } + identity := *identity_ARM.(*UserAssignedIdentity_ARM) + result.Identity = &identity + } + + // Set property "Location": + if server.Location != nil { + location := *server.Location + result.Location = &location + } + + // Set property "Name": + result.Name = resolved.Name + + // Set property "Properties": + if server.AdministratorLogin != nil || + server.AdministratorLoginPassword != nil || + server.AuthConfig != nil || + server.AvailabilityZone != nil || + server.Backup != nil || + server.CreateMode != nil || + server.DataEncryption != nil || + server.HighAvailability != nil || + server.MaintenanceWindow != nil || + server.Network != nil || + server.PointInTimeUTC != nil || + server.Replica != nil || + server.ReplicationRole != nil || + server.SourceServerResourceReference != nil || + server.Storage != nil || + server.Version != nil { + result.Properties = &ServerProperties_ARM{} + } + if server.AdministratorLogin != nil { + administratorLogin := *server.AdministratorLogin + result.Properties.AdministratorLogin = &administratorLogin + } + if server.AdministratorLoginPassword != nil { + administratorLoginPasswordSecret, err := resolved.ResolvedSecrets.Lookup(*server.AdministratorLoginPassword) + if err != nil { + return nil, errors.Wrap(err, "looking up secret for property AdministratorLoginPassword") + } + administratorLoginPassword := administratorLoginPasswordSecret + result.Properties.AdministratorLoginPassword = &administratorLoginPassword + } + if server.AuthConfig != nil { + authConfig_ARM, err := (*server.AuthConfig).ConvertToARM(resolved) + if err != nil { + return nil, err + } + authConfig := *authConfig_ARM.(*AuthConfig_ARM) + result.Properties.AuthConfig = &authConfig + } + if server.AvailabilityZone != nil { + availabilityZone := *server.AvailabilityZone + result.Properties.AvailabilityZone = &availabilityZone + } + if server.Backup != nil { + backup_ARM, err := (*server.Backup).ConvertToARM(resolved) + if err != nil { + return nil, err + } + backup := *backup_ARM.(*Backup_ARM) + result.Properties.Backup = &backup + } + if server.CreateMode != nil { + createMode := *server.CreateMode + result.Properties.CreateMode = &createMode + } + if server.DataEncryption != nil { + dataEncryption_ARM, err := (*server.DataEncryption).ConvertToARM(resolved) + if err != nil { + return nil, err + } + dataEncryption := *dataEncryption_ARM.(*DataEncryption_ARM) + result.Properties.DataEncryption = &dataEncryption + } + if server.HighAvailability != nil { + highAvailability_ARM, err := (*server.HighAvailability).ConvertToARM(resolved) + if err != nil { + return nil, err + } + highAvailability := *highAvailability_ARM.(*HighAvailability_ARM) + result.Properties.HighAvailability = &highAvailability + } + if server.MaintenanceWindow != nil { + maintenanceWindow_ARM, err := (*server.MaintenanceWindow).ConvertToARM(resolved) + if err != nil { + return nil, err + } + maintenanceWindow := *maintenanceWindow_ARM.(*MaintenanceWindow_ARM) + result.Properties.MaintenanceWindow = &maintenanceWindow + } + if server.Network != nil { + network_ARM, err := (*server.Network).ConvertToARM(resolved) + if err != nil { + return nil, err + } + network := *network_ARM.(*Network_ARM) + result.Properties.Network = &network + } + if server.PointInTimeUTC != nil { + pointInTimeUTC := *server.PointInTimeUTC + result.Properties.PointInTimeUTC = &pointInTimeUTC + } + if server.Replica != nil { + replica_ARM, err := (*server.Replica).ConvertToARM(resolved) + if err != nil { + return nil, err + } + replica := *replica_ARM.(*Replica_ARM) + result.Properties.Replica = &replica + } + if server.ReplicationRole != nil { + replicationRole := *server.ReplicationRole + result.Properties.ReplicationRole = &replicationRole + } + if server.SourceServerResourceReference != nil { + sourceServerResourceIdARMID, err := resolved.ResolvedReferences.Lookup(*server.SourceServerResourceReference) + if err != nil { + return nil, err + } + sourceServerResourceId := sourceServerResourceIdARMID + result.Properties.SourceServerResourceId = &sourceServerResourceId + } + if server.Storage != nil { + storage_ARM, err := (*server.Storage).ConvertToARM(resolved) + if err != nil { + return nil, err + } + storage := *storage_ARM.(*Storage_ARM) + result.Properties.Storage = &storage + } + if server.Version != nil { + version := *server.Version + result.Properties.Version = &version + } + + // Set property "Sku": + if server.Sku != nil { + sku_ARM, err := (*server.Sku).ConvertToARM(resolved) + if err != nil { + return nil, err + } + sku := *sku_ARM.(*Sku_ARM) + result.Sku = &sku + } + + // Set property "Tags": + if server.Tags != nil { + result.Tags = make(map[string]string, len(server.Tags)) + for key, value := range server.Tags { + result.Tags[key] = value + } + } + return result, nil +} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (server *FlexibleServer_Spec) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &FlexibleServer_Spec_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (server *FlexibleServer_Spec) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(FlexibleServer_Spec_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected FlexibleServer_Spec_ARM, got %T", armInput) + } + + // Set property "AdministratorLogin": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.AdministratorLogin != nil { + administratorLogin := *typedInput.Properties.AdministratorLogin + server.AdministratorLogin = &administratorLogin + } + } + + // no assignment for property "AdministratorLoginPassword" + + // Set property "AuthConfig": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.AuthConfig != nil { + var authConfig1 AuthConfig + err := authConfig1.PopulateFromARM(owner, *typedInput.Properties.AuthConfig) + if err != nil { + return err + } + authConfig := authConfig1 + server.AuthConfig = &authConfig + } + } + + // Set property "AvailabilityZone": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.AvailabilityZone != nil { + availabilityZone := *typedInput.Properties.AvailabilityZone + server.AvailabilityZone = &availabilityZone + } + } + + // Set property "AzureName": + server.SetAzureName(genruntime.ExtractKubernetesResourceNameFromARMName(typedInput.Name)) + + // Set property "Backup": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Backup != nil { + var backup1 Backup + err := backup1.PopulateFromARM(owner, *typedInput.Properties.Backup) + if err != nil { + return err + } + backup := backup1 + server.Backup = &backup + } + } + + // Set property "CreateMode": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.CreateMode != nil { + createMode := *typedInput.Properties.CreateMode + server.CreateMode = &createMode + } + } + + // Set property "DataEncryption": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.DataEncryption != nil { + var dataEncryption1 DataEncryption + err := dataEncryption1.PopulateFromARM(owner, *typedInput.Properties.DataEncryption) + if err != nil { + return err + } + dataEncryption := dataEncryption1 + server.DataEncryption = &dataEncryption + } + } + + // Set property "HighAvailability": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.HighAvailability != nil { + var highAvailability1 HighAvailability + err := highAvailability1.PopulateFromARM(owner, *typedInput.Properties.HighAvailability) + if err != nil { + return err + } + highAvailability := highAvailability1 + server.HighAvailability = &highAvailability + } + } + + // Set property "Identity": + if typedInput.Identity != nil { + var identity1 UserAssignedIdentity + err := identity1.PopulateFromARM(owner, *typedInput.Identity) + if err != nil { + return err + } + identity := identity1 + server.Identity = &identity + } + + // Set property "Location": + if typedInput.Location != nil { + location := *typedInput.Location + server.Location = &location + } + + // Set property "MaintenanceWindow": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.MaintenanceWindow != nil { + var maintenanceWindow1 MaintenanceWindow + err := maintenanceWindow1.PopulateFromARM(owner, *typedInput.Properties.MaintenanceWindow) + if err != nil { + return err + } + maintenanceWindow := maintenanceWindow1 + server.MaintenanceWindow = &maintenanceWindow + } + } + + // Set property "Network": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Network != nil { + var network1 Network + err := network1.PopulateFromARM(owner, *typedInput.Properties.Network) + if err != nil { + return err + } + network := network1 + server.Network = &network + } + } + + // no assignment for property "OperatorSpec" + + // Set property "Owner": + server.Owner = &genruntime.KnownResourceReference{ + Name: owner.Name, + ARMID: owner.ARMID, + } + + // Set property "PointInTimeUTC": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.PointInTimeUTC != nil { + pointInTimeUTC := *typedInput.Properties.PointInTimeUTC + server.PointInTimeUTC = &pointInTimeUTC + } + } + + // Set property "Replica": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Replica != nil { + var replica1 Replica + err := replica1.PopulateFromARM(owner, *typedInput.Properties.Replica) + if err != nil { + return err + } + replica := replica1 + server.Replica = &replica + } + } + + // Set property "ReplicationRole": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.ReplicationRole != nil { + replicationRole := *typedInput.Properties.ReplicationRole + server.ReplicationRole = &replicationRole + } + } + + // Set property "Sku": + if typedInput.Sku != nil { + var sku1 Sku + err := sku1.PopulateFromARM(owner, *typedInput.Sku) + if err != nil { + return err + } + sku := sku1 + server.Sku = &sku + } + + // no assignment for property "SourceServerResourceReference" + + // Set property "Storage": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Storage != nil { + var storage1 Storage + err := storage1.PopulateFromARM(owner, *typedInput.Properties.Storage) + if err != nil { + return err + } + storage := storage1 + server.Storage = &storage + } + } + + // Set property "Tags": + if typedInput.Tags != nil { + server.Tags = make(map[string]string, len(typedInput.Tags)) + for key, value := range typedInput.Tags { + server.Tags[key] = value + } + } + + // Set property "Version": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Version != nil { + version := *typedInput.Properties.Version + server.Version = &version + } + } + + // No error + return nil +} + +var _ genruntime.ConvertibleSpec = &FlexibleServer_Spec{} + +// ConvertSpecFrom populates our FlexibleServer_Spec from the provided source +func (server *FlexibleServer_Spec) ConvertSpecFrom(source genruntime.ConvertibleSpec) error { + src, ok := source.(*v20230601ps.FlexibleServer_Spec) + if ok { + // Populate our instance from source + return server.AssignProperties_From_FlexibleServer_Spec(src) + } + + // Convert to an intermediate form + src = &v20230601ps.FlexibleServer_Spec{} + err := src.ConvertSpecFrom(source) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertSpecFrom()") + } + + // Update our instance from src + err = server.AssignProperties_From_FlexibleServer_Spec(src) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertSpecFrom()") + } + + return nil +} + +// ConvertSpecTo populates the provided destination from our FlexibleServer_Spec +func (server *FlexibleServer_Spec) ConvertSpecTo(destination genruntime.ConvertibleSpec) error { + dst, ok := destination.(*v20230601ps.FlexibleServer_Spec) + if ok { + // Populate destination from our instance + return server.AssignProperties_To_FlexibleServer_Spec(dst) + } + + // Convert to an intermediate form + dst = &v20230601ps.FlexibleServer_Spec{} + err := server.AssignProperties_To_FlexibleServer_Spec(dst) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertSpecTo()") + } + + // Update dst from our instance + err = dst.ConvertSpecTo(destination) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertSpecTo()") + } + + return nil +} + +// AssignProperties_From_FlexibleServer_Spec populates our FlexibleServer_Spec from the provided source FlexibleServer_Spec +func (server *FlexibleServer_Spec) AssignProperties_From_FlexibleServer_Spec(source *v20230601ps.FlexibleServer_Spec) error { + + // AdministratorLogin + server.AdministratorLogin = genruntime.ClonePointerToString(source.AdministratorLogin) + + // AdministratorLoginPassword + if source.AdministratorLoginPassword != nil { + administratorLoginPassword := source.AdministratorLoginPassword.Copy() + server.AdministratorLoginPassword = &administratorLoginPassword + } else { + server.AdministratorLoginPassword = nil + } + + // AuthConfig + if source.AuthConfig != nil { + var authConfig AuthConfig + err := authConfig.AssignProperties_From_AuthConfig(source.AuthConfig) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_AuthConfig() to populate field AuthConfig") + } + server.AuthConfig = &authConfig + } else { + server.AuthConfig = nil + } + + // AvailabilityZone + server.AvailabilityZone = genruntime.ClonePointerToString(source.AvailabilityZone) + + // AzureName + server.AzureName = source.AzureName + + // Backup + if source.Backup != nil { + var backup Backup + err := backup.AssignProperties_From_Backup(source.Backup) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_Backup() to populate field Backup") + } + server.Backup = &backup + } else { + server.Backup = nil + } + + // CreateMode + if source.CreateMode != nil { + createMode := ServerProperties_CreateMode(*source.CreateMode) + server.CreateMode = &createMode + } else { + server.CreateMode = nil + } + + // DataEncryption + if source.DataEncryption != nil { + var dataEncryption DataEncryption + err := dataEncryption.AssignProperties_From_DataEncryption(source.DataEncryption) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_DataEncryption() to populate field DataEncryption") + } + server.DataEncryption = &dataEncryption + } else { + server.DataEncryption = nil + } + + // HighAvailability + if source.HighAvailability != nil { + var highAvailability HighAvailability + err := highAvailability.AssignProperties_From_HighAvailability(source.HighAvailability) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_HighAvailability() to populate field HighAvailability") + } + server.HighAvailability = &highAvailability + } else { + server.HighAvailability = nil + } + + // Identity + if source.Identity != nil { + var identity UserAssignedIdentity + err := identity.AssignProperties_From_UserAssignedIdentity(source.Identity) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_UserAssignedIdentity() to populate field Identity") + } + server.Identity = &identity + } else { + server.Identity = nil + } + + // Location + server.Location = genruntime.ClonePointerToString(source.Location) + + // MaintenanceWindow + if source.MaintenanceWindow != nil { + var maintenanceWindow MaintenanceWindow + err := maintenanceWindow.AssignProperties_From_MaintenanceWindow(source.MaintenanceWindow) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_MaintenanceWindow() to populate field MaintenanceWindow") + } + server.MaintenanceWindow = &maintenanceWindow + } else { + server.MaintenanceWindow = nil + } + + // Network + if source.Network != nil { + var network Network + err := network.AssignProperties_From_Network(source.Network) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_Network() to populate field Network") + } + server.Network = &network + } else { + server.Network = nil + } + + // OperatorSpec + if source.OperatorSpec != nil { + var operatorSpec FlexibleServerOperatorSpec + err := operatorSpec.AssignProperties_From_FlexibleServerOperatorSpec(source.OperatorSpec) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_FlexibleServerOperatorSpec() to populate field OperatorSpec") + } + server.OperatorSpec = &operatorSpec + } else { + server.OperatorSpec = nil + } + + // Owner + if source.Owner != nil { + owner := source.Owner.Copy() + server.Owner = &owner + } else { + server.Owner = nil + } + + // PointInTimeUTC + server.PointInTimeUTC = genruntime.ClonePointerToString(source.PointInTimeUTC) + + // Replica + if source.Replica != nil { + var replica Replica + err := replica.AssignProperties_From_Replica(source.Replica) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_Replica() to populate field Replica") + } + server.Replica = &replica + } else { + server.Replica = nil + } + + // ReplicationRole + if source.ReplicationRole != nil { + replicationRole := ReplicationRole(*source.ReplicationRole) + server.ReplicationRole = &replicationRole + } else { + server.ReplicationRole = nil + } + + // Sku + if source.Sku != nil { + var sku Sku + err := sku.AssignProperties_From_Sku(source.Sku) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_Sku() to populate field Sku") + } + server.Sku = &sku + } else { + server.Sku = nil + } + + // SourceServerResourceReference + if source.SourceServerResourceReference != nil { + sourceServerResourceReference := source.SourceServerResourceReference.Copy() + server.SourceServerResourceReference = &sourceServerResourceReference + } else { + server.SourceServerResourceReference = nil + } + + // Storage + if source.Storage != nil { + var storage Storage + err := storage.AssignProperties_From_Storage(source.Storage) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_Storage() to populate field Storage") + } + server.Storage = &storage + } else { + server.Storage = nil + } + + // Tags + server.Tags = genruntime.CloneMapOfStringToString(source.Tags) + + // Version + if source.Version != nil { + version := ServerVersion(*source.Version) + server.Version = &version + } else { + server.Version = nil + } + + // No error + return nil +} + +// AssignProperties_To_FlexibleServer_Spec populates the provided destination FlexibleServer_Spec from our FlexibleServer_Spec +func (server *FlexibleServer_Spec) AssignProperties_To_FlexibleServer_Spec(destination *v20230601ps.FlexibleServer_Spec) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // AdministratorLogin + destination.AdministratorLogin = genruntime.ClonePointerToString(server.AdministratorLogin) + + // AdministratorLoginPassword + if server.AdministratorLoginPassword != nil { + administratorLoginPassword := server.AdministratorLoginPassword.Copy() + destination.AdministratorLoginPassword = &administratorLoginPassword + } else { + destination.AdministratorLoginPassword = nil + } + + // AuthConfig + if server.AuthConfig != nil { + var authConfig v20230601ps.AuthConfig + err := server.AuthConfig.AssignProperties_To_AuthConfig(&authConfig) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_AuthConfig() to populate field AuthConfig") + } + destination.AuthConfig = &authConfig + } else { + destination.AuthConfig = nil + } + + // AvailabilityZone + destination.AvailabilityZone = genruntime.ClonePointerToString(server.AvailabilityZone) + + // AzureName + destination.AzureName = server.AzureName + + // Backup + if server.Backup != nil { + var backup v20230601ps.Backup + err := server.Backup.AssignProperties_To_Backup(&backup) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_Backup() to populate field Backup") + } + destination.Backup = &backup + } else { + destination.Backup = nil + } + + // CreateMode + if server.CreateMode != nil { + createMode := string(*server.CreateMode) + destination.CreateMode = &createMode + } else { + destination.CreateMode = nil + } + + // DataEncryption + if server.DataEncryption != nil { + var dataEncryption v20230601ps.DataEncryption + err := server.DataEncryption.AssignProperties_To_DataEncryption(&dataEncryption) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_DataEncryption() to populate field DataEncryption") + } + destination.DataEncryption = &dataEncryption + } else { + destination.DataEncryption = nil + } + + // HighAvailability + if server.HighAvailability != nil { + var highAvailability v20230601ps.HighAvailability + err := server.HighAvailability.AssignProperties_To_HighAvailability(&highAvailability) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_HighAvailability() to populate field HighAvailability") + } + destination.HighAvailability = &highAvailability + } else { + destination.HighAvailability = nil + } + + // Identity + if server.Identity != nil { + var identity v20230601ps.UserAssignedIdentity + err := server.Identity.AssignProperties_To_UserAssignedIdentity(&identity) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_UserAssignedIdentity() to populate field Identity") + } + destination.Identity = &identity + } else { + destination.Identity = nil + } + + // Location + destination.Location = genruntime.ClonePointerToString(server.Location) + + // MaintenanceWindow + if server.MaintenanceWindow != nil { + var maintenanceWindow v20230601ps.MaintenanceWindow + err := server.MaintenanceWindow.AssignProperties_To_MaintenanceWindow(&maintenanceWindow) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_MaintenanceWindow() to populate field MaintenanceWindow") + } + destination.MaintenanceWindow = &maintenanceWindow + } else { + destination.MaintenanceWindow = nil + } + + // Network + if server.Network != nil { + var network v20230601ps.Network + err := server.Network.AssignProperties_To_Network(&network) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_Network() to populate field Network") + } + destination.Network = &network + } else { + destination.Network = nil + } + + // OperatorSpec + if server.OperatorSpec != nil { + var operatorSpec v20230601ps.FlexibleServerOperatorSpec + err := server.OperatorSpec.AssignProperties_To_FlexibleServerOperatorSpec(&operatorSpec) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_FlexibleServerOperatorSpec() to populate field OperatorSpec") + } + destination.OperatorSpec = &operatorSpec + } else { + destination.OperatorSpec = nil + } + + // OriginalVersion + destination.OriginalVersion = server.OriginalVersion() + + // Owner + if server.Owner != nil { + owner := server.Owner.Copy() + destination.Owner = &owner + } else { + destination.Owner = nil + } + + // PointInTimeUTC + destination.PointInTimeUTC = genruntime.ClonePointerToString(server.PointInTimeUTC) + + // Replica + if server.Replica != nil { + var replica v20230601ps.Replica + err := server.Replica.AssignProperties_To_Replica(&replica) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_Replica() to populate field Replica") + } + destination.Replica = &replica + } else { + destination.Replica = nil + } + + // ReplicationRole + if server.ReplicationRole != nil { + replicationRole := string(*server.ReplicationRole) + destination.ReplicationRole = &replicationRole + } else { + destination.ReplicationRole = nil + } + + // Sku + if server.Sku != nil { + var sku v20230601ps.Sku + err := server.Sku.AssignProperties_To_Sku(&sku) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_Sku() to populate field Sku") + } + destination.Sku = &sku + } else { + destination.Sku = nil + } + + // SourceServerResourceReference + if server.SourceServerResourceReference != nil { + sourceServerResourceReference := server.SourceServerResourceReference.Copy() + destination.SourceServerResourceReference = &sourceServerResourceReference + } else { + destination.SourceServerResourceReference = nil + } + + // Storage + if server.Storage != nil { + var storage v20230601ps.Storage + err := server.Storage.AssignProperties_To_Storage(&storage) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_Storage() to populate field Storage") + } + destination.Storage = &storage + } else { + destination.Storage = nil + } + + // Tags + destination.Tags = genruntime.CloneMapOfStringToString(server.Tags) + + // Version + if server.Version != nil { + version := string(*server.Version) + destination.Version = &version + } else { + destination.Version = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// OriginalVersion returns the original API version used to create the resource. +func (server *FlexibleServer_Spec) OriginalVersion() string { + return GroupVersion.Version +} + +// SetAzureName sets the Azure name of the resource +func (server *FlexibleServer_Spec) SetAzureName(azureName string) { server.AzureName = azureName } + +type FlexibleServer_STATUS struct { + // AdministratorLogin: The administrator's login name of a server. Can only be specified when the server is being created + // (and is required for creation). + AdministratorLogin *string `json:"administratorLogin,omitempty"` + + // AuthConfig: AuthConfig properties of a server. + AuthConfig *AuthConfig_STATUS `json:"authConfig,omitempty"` + + // AvailabilityZone: availability zone information of the server. + AvailabilityZone *string `json:"availabilityZone,omitempty"` + + // Backup: Backup properties of a server. + Backup *Backup_STATUS `json:"backup,omitempty"` + + // Conditions: The observed state of the resource + Conditions []conditions.Condition `json:"conditions,omitempty"` + + // CreateMode: The mode to create a new PostgreSQL server. + CreateMode *ServerProperties_CreateMode_STATUS `json:"createMode,omitempty"` + + // DataEncryption: Data encryption properties of a server. + DataEncryption *DataEncryption_STATUS `json:"dataEncryption,omitempty"` + + // FullyQualifiedDomainName: The fully qualified domain name of a server. + FullyQualifiedDomainName *string `json:"fullyQualifiedDomainName,omitempty"` + + // HighAvailability: High availability properties of a server. + HighAvailability *HighAvailability_STATUS `json:"highAvailability,omitempty"` + + // Id: Fully qualified resource ID for the resource. E.g. + // "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" + Id *string `json:"id,omitempty"` + + // Identity: Describes the identity of the application. + Identity *UserAssignedIdentity_STATUS `json:"identity,omitempty"` + + // Location: The geo-location where the resource lives + Location *string `json:"location,omitempty"` + + // MaintenanceWindow: Maintenance window properties of a server. + MaintenanceWindow *MaintenanceWindow_STATUS `json:"maintenanceWindow,omitempty"` + + // MinorVersion: The minor version of the server. + MinorVersion *string `json:"minorVersion,omitempty"` + + // Name: The name of the resource + Name *string `json:"name,omitempty"` + + // Network: Network properties of a server. This Network property is required to be passed only in case you want the server + // to be Private access server. + Network *Network_STATUS `json:"network,omitempty"` + + // PointInTimeUTC: Restore point creation time (ISO8601 format), specifying the time to restore from. It's required when + // 'createMode' is 'PointInTimeRestore' or 'GeoRestore' or 'ReviveDropped'. + PointInTimeUTC *string `json:"pointInTimeUTC,omitempty"` + + // PrivateEndpointConnections: List of private endpoint connections associated with the specified resource. + PrivateEndpointConnections []PrivateEndpointConnection_STATUS `json:"privateEndpointConnections,omitempty"` + + // Replica: Replica properties of a server. These Replica properties are required to be passed only in case you want to + // Promote a server. + Replica *Replica_STATUS `json:"replica,omitempty"` + + // ReplicaCapacity: Replicas allowed for a server. + ReplicaCapacity *int `json:"replicaCapacity,omitempty"` + + // ReplicationRole: Replication role of the server + ReplicationRole *ReplicationRole_STATUS `json:"replicationRole,omitempty"` + + // Sku: The SKU (pricing tier) of the server. + Sku *Sku_STATUS `json:"sku,omitempty"` + + // SourceServerResourceId: The source server resource ID to restore from. It's required when 'createMode' is + // 'PointInTimeRestore' or 'GeoRestore' or 'Replica' or 'ReviveDropped'. This property is returned only for Replica server + SourceServerResourceId *string `json:"sourceServerResourceId,omitempty"` + + // State: A state of a server that is visible to user. + State *ServerProperties_State_STATUS `json:"state,omitempty"` + + // Storage: Storage properties of a server. + Storage *Storage_STATUS `json:"storage,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"` + + // Version: PostgreSQL Server version. + Version *ServerVersion_STATUS `json:"version,omitempty"` +} + +var _ genruntime.ConvertibleStatus = &FlexibleServer_STATUS{} + +// ConvertStatusFrom populates our FlexibleServer_STATUS from the provided source +func (server *FlexibleServer_STATUS) ConvertStatusFrom(source genruntime.ConvertibleStatus) error { + src, ok := source.(*v20230601ps.FlexibleServer_STATUS) + if ok { + // Populate our instance from source + return server.AssignProperties_From_FlexibleServer_STATUS(src) + } + + // Convert to an intermediate form + src = &v20230601ps.FlexibleServer_STATUS{} + err := src.ConvertStatusFrom(source) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertStatusFrom()") + } + + // Update our instance from src + err = server.AssignProperties_From_FlexibleServer_STATUS(src) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertStatusFrom()") + } + + return nil +} + +// ConvertStatusTo populates the provided destination from our FlexibleServer_STATUS +func (server *FlexibleServer_STATUS) ConvertStatusTo(destination genruntime.ConvertibleStatus) error { + dst, ok := destination.(*v20230601ps.FlexibleServer_STATUS) + if ok { + // Populate destination from our instance + return server.AssignProperties_To_FlexibleServer_STATUS(dst) + } + + // Convert to an intermediate form + dst = &v20230601ps.FlexibleServer_STATUS{} + err := server.AssignProperties_To_FlexibleServer_STATUS(dst) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertStatusTo()") + } + + // Update dst from our instance + err = dst.ConvertStatusTo(destination) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertStatusTo()") + } + + return nil +} + +var _ genruntime.FromARMConverter = &FlexibleServer_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (server *FlexibleServer_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &FlexibleServer_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (server *FlexibleServer_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(FlexibleServer_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected FlexibleServer_STATUS_ARM, got %T", armInput) + } + + // Set property "AdministratorLogin": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.AdministratorLogin != nil { + administratorLogin := *typedInput.Properties.AdministratorLogin + server.AdministratorLogin = &administratorLogin + } + } + + // Set property "AuthConfig": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.AuthConfig != nil { + var authConfig1 AuthConfig_STATUS + err := authConfig1.PopulateFromARM(owner, *typedInput.Properties.AuthConfig) + if err != nil { + return err + } + authConfig := authConfig1 + server.AuthConfig = &authConfig + } + } + + // Set property "AvailabilityZone": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.AvailabilityZone != nil { + availabilityZone := *typedInput.Properties.AvailabilityZone + server.AvailabilityZone = &availabilityZone + } + } + + // Set property "Backup": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Backup != nil { + var backup1 Backup_STATUS + err := backup1.PopulateFromARM(owner, *typedInput.Properties.Backup) + if err != nil { + return err + } + backup := backup1 + server.Backup = &backup + } + } + + // no assignment for property "Conditions" + + // Set property "CreateMode": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.CreateMode != nil { + createMode := *typedInput.Properties.CreateMode + server.CreateMode = &createMode + } + } + + // Set property "DataEncryption": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.DataEncryption != nil { + var dataEncryption1 DataEncryption_STATUS + err := dataEncryption1.PopulateFromARM(owner, *typedInput.Properties.DataEncryption) + if err != nil { + return err + } + dataEncryption := dataEncryption1 + server.DataEncryption = &dataEncryption + } + } + + // Set property "FullyQualifiedDomainName": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.FullyQualifiedDomainName != nil { + fullyQualifiedDomainName := *typedInput.Properties.FullyQualifiedDomainName + server.FullyQualifiedDomainName = &fullyQualifiedDomainName + } + } + + // Set property "HighAvailability": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.HighAvailability != nil { + var highAvailability1 HighAvailability_STATUS + err := highAvailability1.PopulateFromARM(owner, *typedInput.Properties.HighAvailability) + if err != nil { + return err + } + highAvailability := highAvailability1 + server.HighAvailability = &highAvailability + } + } + + // Set property "Id": + if typedInput.Id != nil { + id := *typedInput.Id + server.Id = &id + } + + // Set property "Identity": + if typedInput.Identity != nil { + var identity1 UserAssignedIdentity_STATUS + err := identity1.PopulateFromARM(owner, *typedInput.Identity) + if err != nil { + return err + } + identity := identity1 + server.Identity = &identity + } + + // Set property "Location": + if typedInput.Location != nil { + location := *typedInput.Location + server.Location = &location + } + + // Set property "MaintenanceWindow": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.MaintenanceWindow != nil { + var maintenanceWindow1 MaintenanceWindow_STATUS + err := maintenanceWindow1.PopulateFromARM(owner, *typedInput.Properties.MaintenanceWindow) + if err != nil { + return err + } + maintenanceWindow := maintenanceWindow1 + server.MaintenanceWindow = &maintenanceWindow + } + } + + // Set property "MinorVersion": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.MinorVersion != nil { + minorVersion := *typedInput.Properties.MinorVersion + server.MinorVersion = &minorVersion + } + } + + // Set property "Name": + if typedInput.Name != nil { + name := *typedInput.Name + server.Name = &name + } + + // Set property "Network": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Network != nil { + var network1 Network_STATUS + err := network1.PopulateFromARM(owner, *typedInput.Properties.Network) + if err != nil { + return err + } + network := network1 + server.Network = &network + } + } + + // Set property "PointInTimeUTC": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.PointInTimeUTC != nil { + pointInTimeUTC := *typedInput.Properties.PointInTimeUTC + server.PointInTimeUTC = &pointInTimeUTC + } + } + + // Set property "PrivateEndpointConnections": + // copying flattened property: + if typedInput.Properties != nil { + for _, item := range typedInput.Properties.PrivateEndpointConnections { + var item1 PrivateEndpointConnection_STATUS + err := item1.PopulateFromARM(owner, item) + if err != nil { + return err + } + server.PrivateEndpointConnections = append(server.PrivateEndpointConnections, item1) + } + } + + // Set property "Replica": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Replica != nil { + var replica1 Replica_STATUS + err := replica1.PopulateFromARM(owner, *typedInput.Properties.Replica) + if err != nil { + return err + } + replica := replica1 + server.Replica = &replica + } + } + + // Set property "ReplicaCapacity": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.ReplicaCapacity != nil { + replicaCapacity := *typedInput.Properties.ReplicaCapacity + server.ReplicaCapacity = &replicaCapacity + } + } + + // Set property "ReplicationRole": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.ReplicationRole != nil { + replicationRole := *typedInput.Properties.ReplicationRole + server.ReplicationRole = &replicationRole + } + } + + // Set property "Sku": + if typedInput.Sku != nil { + var sku1 Sku_STATUS + err := sku1.PopulateFromARM(owner, *typedInput.Sku) + if err != nil { + return err + } + sku := sku1 + server.Sku = &sku + } + + // Set property "SourceServerResourceId": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.SourceServerResourceId != nil { + sourceServerResourceId := *typedInput.Properties.SourceServerResourceId + server.SourceServerResourceId = &sourceServerResourceId + } + } + + // Set property "State": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.State != nil { + state := *typedInput.Properties.State + server.State = &state + } + } + + // Set property "Storage": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Storage != nil { + var storage1 Storage_STATUS + err := storage1.PopulateFromARM(owner, *typedInput.Properties.Storage) + if err != nil { + return err + } + storage := storage1 + server.Storage = &storage + } + } + + // Set property "SystemData": + if typedInput.SystemData != nil { + var systemData1 SystemData_STATUS + err := systemData1.PopulateFromARM(owner, *typedInput.SystemData) + if err != nil { + return err + } + systemData := systemData1 + server.SystemData = &systemData + } + + // Set property "Tags": + if typedInput.Tags != nil { + server.Tags = make(map[string]string, len(typedInput.Tags)) + for key, value := range typedInput.Tags { + server.Tags[key] = value + } + } + + // Set property "Type": + if typedInput.Type != nil { + typeVar := *typedInput.Type + server.Type = &typeVar + } + + // Set property "Version": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Version != nil { + version := *typedInput.Properties.Version + server.Version = &version + } + } + + // No error + return nil +} + +// AssignProperties_From_FlexibleServer_STATUS populates our FlexibleServer_STATUS from the provided source FlexibleServer_STATUS +func (server *FlexibleServer_STATUS) AssignProperties_From_FlexibleServer_STATUS(source *v20230601ps.FlexibleServer_STATUS) error { + + // AdministratorLogin + server.AdministratorLogin = genruntime.ClonePointerToString(source.AdministratorLogin) + + // AuthConfig + if source.AuthConfig != nil { + var authConfig AuthConfig_STATUS + err := authConfig.AssignProperties_From_AuthConfig_STATUS(source.AuthConfig) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_AuthConfig_STATUS() to populate field AuthConfig") + } + server.AuthConfig = &authConfig + } else { + server.AuthConfig = nil + } + + // AvailabilityZone + server.AvailabilityZone = genruntime.ClonePointerToString(source.AvailabilityZone) + + // Backup + if source.Backup != nil { + var backup Backup_STATUS + err := backup.AssignProperties_From_Backup_STATUS(source.Backup) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_Backup_STATUS() to populate field Backup") + } + server.Backup = &backup + } else { + server.Backup = nil + } + + // Conditions + server.Conditions = genruntime.CloneSliceOfCondition(source.Conditions) + + // CreateMode + if source.CreateMode != nil { + createMode := ServerProperties_CreateMode_STATUS(*source.CreateMode) + server.CreateMode = &createMode + } else { + server.CreateMode = nil + } + + // DataEncryption + if source.DataEncryption != nil { + var dataEncryption DataEncryption_STATUS + err := dataEncryption.AssignProperties_From_DataEncryption_STATUS(source.DataEncryption) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_DataEncryption_STATUS() to populate field DataEncryption") + } + server.DataEncryption = &dataEncryption + } else { + server.DataEncryption = nil + } + + // FullyQualifiedDomainName + server.FullyQualifiedDomainName = genruntime.ClonePointerToString(source.FullyQualifiedDomainName) + + // HighAvailability + if source.HighAvailability != nil { + var highAvailability HighAvailability_STATUS + err := highAvailability.AssignProperties_From_HighAvailability_STATUS(source.HighAvailability) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_HighAvailability_STATUS() to populate field HighAvailability") + } + server.HighAvailability = &highAvailability + } else { + server.HighAvailability = nil + } + + // Id + server.Id = genruntime.ClonePointerToString(source.Id) + + // Identity + if source.Identity != nil { + var identity UserAssignedIdentity_STATUS + err := identity.AssignProperties_From_UserAssignedIdentity_STATUS(source.Identity) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_UserAssignedIdentity_STATUS() to populate field Identity") + } + server.Identity = &identity + } else { + server.Identity = nil + } + + // Location + server.Location = genruntime.ClonePointerToString(source.Location) + + // MaintenanceWindow + if source.MaintenanceWindow != nil { + var maintenanceWindow MaintenanceWindow_STATUS + err := maintenanceWindow.AssignProperties_From_MaintenanceWindow_STATUS(source.MaintenanceWindow) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_MaintenanceWindow_STATUS() to populate field MaintenanceWindow") + } + server.MaintenanceWindow = &maintenanceWindow + } else { + server.MaintenanceWindow = nil + } + + // MinorVersion + server.MinorVersion = genruntime.ClonePointerToString(source.MinorVersion) + + // Name + server.Name = genruntime.ClonePointerToString(source.Name) + + // Network + if source.Network != nil { + var network Network_STATUS + err := network.AssignProperties_From_Network_STATUS(source.Network) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_Network_STATUS() to populate field Network") + } + server.Network = &network + } else { + server.Network = nil + } + + // PointInTimeUTC + server.PointInTimeUTC = genruntime.ClonePointerToString(source.PointInTimeUTC) + + // PrivateEndpointConnections + if source.PrivateEndpointConnections != nil { + privateEndpointConnectionList := make([]PrivateEndpointConnection_STATUS, len(source.PrivateEndpointConnections)) + for privateEndpointConnectionIndex, privateEndpointConnectionItem := range source.PrivateEndpointConnections { + // Shadow the loop variable to avoid aliasing + privateEndpointConnectionItem := privateEndpointConnectionItem + var privateEndpointConnection PrivateEndpointConnection_STATUS + err := privateEndpointConnection.AssignProperties_From_PrivateEndpointConnection_STATUS(&privateEndpointConnectionItem) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_PrivateEndpointConnection_STATUS() to populate field PrivateEndpointConnections") + } + privateEndpointConnectionList[privateEndpointConnectionIndex] = privateEndpointConnection + } + server.PrivateEndpointConnections = privateEndpointConnectionList + } else { + server.PrivateEndpointConnections = nil + } + + // Replica + if source.Replica != nil { + var replica Replica_STATUS + err := replica.AssignProperties_From_Replica_STATUS(source.Replica) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_Replica_STATUS() to populate field Replica") + } + server.Replica = &replica + } else { + server.Replica = nil + } + + // ReplicaCapacity + server.ReplicaCapacity = genruntime.ClonePointerToInt(source.ReplicaCapacity) + + // ReplicationRole + if source.ReplicationRole != nil { + replicationRole := ReplicationRole_STATUS(*source.ReplicationRole) + server.ReplicationRole = &replicationRole + } else { + server.ReplicationRole = nil + } + + // Sku + if source.Sku != nil { + var sku Sku_STATUS + err := sku.AssignProperties_From_Sku_STATUS(source.Sku) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_Sku_STATUS() to populate field Sku") + } + server.Sku = &sku + } else { + server.Sku = nil + } + + // SourceServerResourceId + server.SourceServerResourceId = genruntime.ClonePointerToString(source.SourceServerResourceId) + + // State + if source.State != nil { + state := ServerProperties_State_STATUS(*source.State) + server.State = &state + } else { + server.State = nil + } + + // Storage + if source.Storage != nil { + var storage Storage_STATUS + err := storage.AssignProperties_From_Storage_STATUS(source.Storage) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_Storage_STATUS() to populate field Storage") + } + server.Storage = &storage + } else { + server.Storage = nil + } + + // SystemData + if source.SystemData != nil { + var systemDatum SystemData_STATUS + err := systemDatum.AssignProperties_From_SystemData_STATUS(source.SystemData) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_SystemData_STATUS() to populate field SystemData") + } + server.SystemData = &systemDatum + } else { + server.SystemData = nil + } + + // Tags + server.Tags = genruntime.CloneMapOfStringToString(source.Tags) + + // Type + server.Type = genruntime.ClonePointerToString(source.Type) + + // Version + if source.Version != nil { + version := ServerVersion_STATUS(*source.Version) + server.Version = &version + } else { + server.Version = nil + } + + // No error + return nil +} + +// AssignProperties_To_FlexibleServer_STATUS populates the provided destination FlexibleServer_STATUS from our FlexibleServer_STATUS +func (server *FlexibleServer_STATUS) AssignProperties_To_FlexibleServer_STATUS(destination *v20230601ps.FlexibleServer_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // AdministratorLogin + destination.AdministratorLogin = genruntime.ClonePointerToString(server.AdministratorLogin) + + // AuthConfig + if server.AuthConfig != nil { + var authConfig v20230601ps.AuthConfig_STATUS + err := server.AuthConfig.AssignProperties_To_AuthConfig_STATUS(&authConfig) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_AuthConfig_STATUS() to populate field AuthConfig") + } + destination.AuthConfig = &authConfig + } else { + destination.AuthConfig = nil + } + + // AvailabilityZone + destination.AvailabilityZone = genruntime.ClonePointerToString(server.AvailabilityZone) + + // Backup + if server.Backup != nil { + var backup v20230601ps.Backup_STATUS + err := server.Backup.AssignProperties_To_Backup_STATUS(&backup) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_Backup_STATUS() to populate field Backup") + } + destination.Backup = &backup + } else { + destination.Backup = nil + } + + // Conditions + destination.Conditions = genruntime.CloneSliceOfCondition(server.Conditions) + + // CreateMode + if server.CreateMode != nil { + createMode := string(*server.CreateMode) + destination.CreateMode = &createMode + } else { + destination.CreateMode = nil + } + + // DataEncryption + if server.DataEncryption != nil { + var dataEncryption v20230601ps.DataEncryption_STATUS + err := server.DataEncryption.AssignProperties_To_DataEncryption_STATUS(&dataEncryption) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_DataEncryption_STATUS() to populate field DataEncryption") + } + destination.DataEncryption = &dataEncryption + } else { + destination.DataEncryption = nil + } + + // FullyQualifiedDomainName + destination.FullyQualifiedDomainName = genruntime.ClonePointerToString(server.FullyQualifiedDomainName) + + // HighAvailability + if server.HighAvailability != nil { + var highAvailability v20230601ps.HighAvailability_STATUS + err := server.HighAvailability.AssignProperties_To_HighAvailability_STATUS(&highAvailability) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_HighAvailability_STATUS() to populate field HighAvailability") + } + destination.HighAvailability = &highAvailability + } else { + destination.HighAvailability = nil + } + + // Id + destination.Id = genruntime.ClonePointerToString(server.Id) + + // Identity + if server.Identity != nil { + var identity v20230601ps.UserAssignedIdentity_STATUS + err := server.Identity.AssignProperties_To_UserAssignedIdentity_STATUS(&identity) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_UserAssignedIdentity_STATUS() to populate field Identity") + } + destination.Identity = &identity + } else { + destination.Identity = nil + } + + // Location + destination.Location = genruntime.ClonePointerToString(server.Location) + + // MaintenanceWindow + if server.MaintenanceWindow != nil { + var maintenanceWindow v20230601ps.MaintenanceWindow_STATUS + err := server.MaintenanceWindow.AssignProperties_To_MaintenanceWindow_STATUS(&maintenanceWindow) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_MaintenanceWindow_STATUS() to populate field MaintenanceWindow") + } + destination.MaintenanceWindow = &maintenanceWindow + } else { + destination.MaintenanceWindow = nil + } + + // MinorVersion + destination.MinorVersion = genruntime.ClonePointerToString(server.MinorVersion) + + // Name + destination.Name = genruntime.ClonePointerToString(server.Name) + + // Network + if server.Network != nil { + var network v20230601ps.Network_STATUS + err := server.Network.AssignProperties_To_Network_STATUS(&network) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_Network_STATUS() to populate field Network") + } + destination.Network = &network + } else { + destination.Network = nil + } + + // PointInTimeUTC + destination.PointInTimeUTC = genruntime.ClonePointerToString(server.PointInTimeUTC) + + // PrivateEndpointConnections + if server.PrivateEndpointConnections != nil { + privateEndpointConnectionList := make([]v20230601ps.PrivateEndpointConnection_STATUS, len(server.PrivateEndpointConnections)) + for privateEndpointConnectionIndex, privateEndpointConnectionItem := range server.PrivateEndpointConnections { + // Shadow the loop variable to avoid aliasing + privateEndpointConnectionItem := privateEndpointConnectionItem + var privateEndpointConnection v20230601ps.PrivateEndpointConnection_STATUS + err := privateEndpointConnectionItem.AssignProperties_To_PrivateEndpointConnection_STATUS(&privateEndpointConnection) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_PrivateEndpointConnection_STATUS() to populate field PrivateEndpointConnections") + } + privateEndpointConnectionList[privateEndpointConnectionIndex] = privateEndpointConnection + } + destination.PrivateEndpointConnections = privateEndpointConnectionList + } else { + destination.PrivateEndpointConnections = nil + } + + // Replica + if server.Replica != nil { + var replica v20230601ps.Replica_STATUS + err := server.Replica.AssignProperties_To_Replica_STATUS(&replica) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_Replica_STATUS() to populate field Replica") + } + destination.Replica = &replica + } else { + destination.Replica = nil + } + + // ReplicaCapacity + destination.ReplicaCapacity = genruntime.ClonePointerToInt(server.ReplicaCapacity) + + // ReplicationRole + if server.ReplicationRole != nil { + replicationRole := string(*server.ReplicationRole) + destination.ReplicationRole = &replicationRole + } else { + destination.ReplicationRole = nil + } + + // Sku + if server.Sku != nil { + var sku v20230601ps.Sku_STATUS + err := server.Sku.AssignProperties_To_Sku_STATUS(&sku) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_Sku_STATUS() to populate field Sku") + } + destination.Sku = &sku + } else { + destination.Sku = nil + } + + // SourceServerResourceId + destination.SourceServerResourceId = genruntime.ClonePointerToString(server.SourceServerResourceId) + + // State + if server.State != nil { + state := string(*server.State) + destination.State = &state + } else { + destination.State = nil + } + + // Storage + if server.Storage != nil { + var storage v20230601ps.Storage_STATUS + err := server.Storage.AssignProperties_To_Storage_STATUS(&storage) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_Storage_STATUS() to populate field Storage") + } + destination.Storage = &storage + } else { + destination.Storage = nil + } + + // SystemData + if server.SystemData != nil { + var systemDatum v20230601ps.SystemData_STATUS + err := server.SystemData.AssignProperties_To_SystemData_STATUS(&systemDatum) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_SystemData_STATUS() to populate field SystemData") + } + destination.SystemData = &systemDatum + } else { + destination.SystemData = nil + } + + // Tags + destination.Tags = genruntime.CloneMapOfStringToString(server.Tags) + + // Type + destination.Type = genruntime.ClonePointerToString(server.Type) + + // Version + if server.Version != nil { + version := string(*server.Version) + destination.Version = &version + } else { + destination.Version = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Authentication configuration properties of a server +type AuthConfig struct { + // ActiveDirectoryAuth: If Enabled, Azure Active Directory authentication is enabled. + ActiveDirectoryAuth *AuthConfig_ActiveDirectoryAuth `json:"activeDirectoryAuth,omitempty"` + + // PasswordAuth: If Enabled, Password authentication is enabled. + PasswordAuth *AuthConfig_PasswordAuth `json:"passwordAuth,omitempty"` + + // TenantId: Tenant id of the server. + TenantId *string `json:"tenantId,omitempty"` +} + +var _ genruntime.ARMTransformer = &AuthConfig{} + +// ConvertToARM converts from a Kubernetes CRD object to an ARM object +func (config *AuthConfig) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) { + if config == nil { + return nil, nil + } + result := &AuthConfig_ARM{} + + // Set property "ActiveDirectoryAuth": + if config.ActiveDirectoryAuth != nil { + activeDirectoryAuth := *config.ActiveDirectoryAuth + result.ActiveDirectoryAuth = &activeDirectoryAuth + } + + // Set property "PasswordAuth": + if config.PasswordAuth != nil { + passwordAuth := *config.PasswordAuth + result.PasswordAuth = &passwordAuth + } + + // Set property "TenantId": + if config.TenantId != nil { + tenantId := *config.TenantId + result.TenantId = &tenantId + } + return result, nil +} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (config *AuthConfig) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &AuthConfig_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (config *AuthConfig) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(AuthConfig_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected AuthConfig_ARM, got %T", armInput) + } + + // Set property "ActiveDirectoryAuth": + if typedInput.ActiveDirectoryAuth != nil { + activeDirectoryAuth := *typedInput.ActiveDirectoryAuth + config.ActiveDirectoryAuth = &activeDirectoryAuth + } + + // Set property "PasswordAuth": + if typedInput.PasswordAuth != nil { + passwordAuth := *typedInput.PasswordAuth + config.PasswordAuth = &passwordAuth + } + + // Set property "TenantId": + if typedInput.TenantId != nil { + tenantId := *typedInput.TenantId + config.TenantId = &tenantId + } + + // No error + return nil +} + +// AssignProperties_From_AuthConfig populates our AuthConfig from the provided source AuthConfig +func (config *AuthConfig) AssignProperties_From_AuthConfig(source *v20230601ps.AuthConfig) error { + + // ActiveDirectoryAuth + if source.ActiveDirectoryAuth != nil { + activeDirectoryAuth := AuthConfig_ActiveDirectoryAuth(*source.ActiveDirectoryAuth) + config.ActiveDirectoryAuth = &activeDirectoryAuth + } else { + config.ActiveDirectoryAuth = nil + } + + // PasswordAuth + if source.PasswordAuth != nil { + passwordAuth := AuthConfig_PasswordAuth(*source.PasswordAuth) + config.PasswordAuth = &passwordAuth + } else { + config.PasswordAuth = nil + } + + // TenantId + config.TenantId = genruntime.ClonePointerToString(source.TenantId) + + // No error + return nil +} + +// AssignProperties_To_AuthConfig populates the provided destination AuthConfig from our AuthConfig +func (config *AuthConfig) AssignProperties_To_AuthConfig(destination *v20230601ps.AuthConfig) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // ActiveDirectoryAuth + if config.ActiveDirectoryAuth != nil { + activeDirectoryAuth := string(*config.ActiveDirectoryAuth) + destination.ActiveDirectoryAuth = &activeDirectoryAuth + } else { + destination.ActiveDirectoryAuth = nil + } + + // PasswordAuth + if config.PasswordAuth != nil { + passwordAuth := string(*config.PasswordAuth) + destination.PasswordAuth = &passwordAuth + } else { + destination.PasswordAuth = nil + } + + // TenantId + destination.TenantId = genruntime.ClonePointerToString(config.TenantId) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Authentication configuration properties of a server +type AuthConfig_STATUS struct { + // ActiveDirectoryAuth: If Enabled, Azure Active Directory authentication is enabled. + ActiveDirectoryAuth *AuthConfig_ActiveDirectoryAuth_STATUS `json:"activeDirectoryAuth,omitempty"` + + // PasswordAuth: If Enabled, Password authentication is enabled. + PasswordAuth *AuthConfig_PasswordAuth_STATUS `json:"passwordAuth,omitempty"` + + // TenantId: Tenant id of the server. + TenantId *string `json:"tenantId,omitempty"` +} + +var _ genruntime.FromARMConverter = &AuthConfig_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (config *AuthConfig_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &AuthConfig_STATUS_ARM{} +} + +// 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.(AuthConfig_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected AuthConfig_STATUS_ARM, got %T", armInput) + } + + // Set property "ActiveDirectoryAuth": + if typedInput.ActiveDirectoryAuth != nil { + activeDirectoryAuth := *typedInput.ActiveDirectoryAuth + config.ActiveDirectoryAuth = &activeDirectoryAuth + } + + // Set property "PasswordAuth": + if typedInput.PasswordAuth != nil { + passwordAuth := *typedInput.PasswordAuth + config.PasswordAuth = &passwordAuth + } + + // Set property "TenantId": + if typedInput.TenantId != nil { + tenantId := *typedInput.TenantId + config.TenantId = &tenantId + } + + // 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 *v20230601ps.AuthConfig_STATUS) error { + + // ActiveDirectoryAuth + if source.ActiveDirectoryAuth != nil { + activeDirectoryAuth := AuthConfig_ActiveDirectoryAuth_STATUS(*source.ActiveDirectoryAuth) + config.ActiveDirectoryAuth = &activeDirectoryAuth + } else { + config.ActiveDirectoryAuth = nil + } + + // PasswordAuth + if source.PasswordAuth != nil { + passwordAuth := AuthConfig_PasswordAuth_STATUS(*source.PasswordAuth) + config.PasswordAuth = &passwordAuth + } else { + config.PasswordAuth = nil + } + + // TenantId + config.TenantId = genruntime.ClonePointerToString(source.TenantId) + + // 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 *v20230601ps.AuthConfig_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // ActiveDirectoryAuth + if config.ActiveDirectoryAuth != nil { + activeDirectoryAuth := string(*config.ActiveDirectoryAuth) + destination.ActiveDirectoryAuth = &activeDirectoryAuth + } else { + destination.ActiveDirectoryAuth = nil + } + + // PasswordAuth + if config.PasswordAuth != nil { + passwordAuth := string(*config.PasswordAuth) + destination.PasswordAuth = &passwordAuth + } else { + destination.PasswordAuth = nil + } + + // TenantId + destination.TenantId = genruntime.ClonePointerToString(config.TenantId) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Backup properties of a server +type Backup struct { + // BackupRetentionDays: Backup retention days for the server. + BackupRetentionDays *int `json:"backupRetentionDays,omitempty"` + + // GeoRedundantBackup: A value indicating whether Geo-Redundant backup is enabled on the server. + GeoRedundantBackup *Backup_GeoRedundantBackup `json:"geoRedundantBackup,omitempty"` +} + +var _ genruntime.ARMTransformer = &Backup{} + +// ConvertToARM converts from a Kubernetes CRD object to an ARM object +func (backup *Backup) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) { + if backup == nil { + return nil, nil + } + result := &Backup_ARM{} + + // Set property "BackupRetentionDays": + if backup.BackupRetentionDays != nil { + backupRetentionDays := *backup.BackupRetentionDays + result.BackupRetentionDays = &backupRetentionDays + } + + // Set property "GeoRedundantBackup": + if backup.GeoRedundantBackup != nil { + geoRedundantBackup := *backup.GeoRedundantBackup + result.GeoRedundantBackup = &geoRedundantBackup + } + return result, nil +} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (backup *Backup) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &Backup_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (backup *Backup) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(Backup_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected Backup_ARM, got %T", armInput) + } + + // Set property "BackupRetentionDays": + if typedInput.BackupRetentionDays != nil { + backupRetentionDays := *typedInput.BackupRetentionDays + backup.BackupRetentionDays = &backupRetentionDays + } + + // Set property "GeoRedundantBackup": + if typedInput.GeoRedundantBackup != nil { + geoRedundantBackup := *typedInput.GeoRedundantBackup + backup.GeoRedundantBackup = &geoRedundantBackup + } + + // No error + return nil +} + +// AssignProperties_From_Backup populates our Backup from the provided source Backup +func (backup *Backup) AssignProperties_From_Backup(source *v20230601ps.Backup) error { + + // BackupRetentionDays + backup.BackupRetentionDays = genruntime.ClonePointerToInt(source.BackupRetentionDays) + + // GeoRedundantBackup + if source.GeoRedundantBackup != nil { + geoRedundantBackup := Backup_GeoRedundantBackup(*source.GeoRedundantBackup) + backup.GeoRedundantBackup = &geoRedundantBackup + } else { + backup.GeoRedundantBackup = nil + } + + // No error + return nil +} + +// AssignProperties_To_Backup populates the provided destination Backup from our Backup +func (backup *Backup) AssignProperties_To_Backup(destination *v20230601ps.Backup) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // BackupRetentionDays + destination.BackupRetentionDays = genruntime.ClonePointerToInt(backup.BackupRetentionDays) + + // GeoRedundantBackup + if backup.GeoRedundantBackup != nil { + geoRedundantBackup := string(*backup.GeoRedundantBackup) + destination.GeoRedundantBackup = &geoRedundantBackup + } else { + destination.GeoRedundantBackup = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Backup properties of a server +type Backup_STATUS struct { + // BackupRetentionDays: Backup retention days for the server. + BackupRetentionDays *int `json:"backupRetentionDays,omitempty"` + + // EarliestRestoreDate: The earliest restore point time (ISO8601 format) for server. + EarliestRestoreDate *string `json:"earliestRestoreDate,omitempty"` + + // GeoRedundantBackup: A value indicating whether Geo-Redundant backup is enabled on the server. + GeoRedundantBackup *Backup_GeoRedundantBackup_STATUS `json:"geoRedundantBackup,omitempty"` +} + +var _ genruntime.FromARMConverter = &Backup_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (backup *Backup_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &Backup_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (backup *Backup_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(Backup_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected Backup_STATUS_ARM, got %T", armInput) + } + + // Set property "BackupRetentionDays": + if typedInput.BackupRetentionDays != nil { + backupRetentionDays := *typedInput.BackupRetentionDays + backup.BackupRetentionDays = &backupRetentionDays + } + + // Set property "EarliestRestoreDate": + if typedInput.EarliestRestoreDate != nil { + earliestRestoreDate := *typedInput.EarliestRestoreDate + backup.EarliestRestoreDate = &earliestRestoreDate + } + + // Set property "GeoRedundantBackup": + if typedInput.GeoRedundantBackup != nil { + geoRedundantBackup := *typedInput.GeoRedundantBackup + backup.GeoRedundantBackup = &geoRedundantBackup + } + + // No error + return nil +} + +// AssignProperties_From_Backup_STATUS populates our Backup_STATUS from the provided source Backup_STATUS +func (backup *Backup_STATUS) AssignProperties_From_Backup_STATUS(source *v20230601ps.Backup_STATUS) error { + + // BackupRetentionDays + backup.BackupRetentionDays = genruntime.ClonePointerToInt(source.BackupRetentionDays) + + // EarliestRestoreDate + backup.EarliestRestoreDate = genruntime.ClonePointerToString(source.EarliestRestoreDate) + + // GeoRedundantBackup + if source.GeoRedundantBackup != nil { + geoRedundantBackup := Backup_GeoRedundantBackup_STATUS(*source.GeoRedundantBackup) + backup.GeoRedundantBackup = &geoRedundantBackup + } else { + backup.GeoRedundantBackup = nil + } + + // No error + return nil +} + +// AssignProperties_To_Backup_STATUS populates the provided destination Backup_STATUS from our Backup_STATUS +func (backup *Backup_STATUS) AssignProperties_To_Backup_STATUS(destination *v20230601ps.Backup_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // BackupRetentionDays + destination.BackupRetentionDays = genruntime.ClonePointerToInt(backup.BackupRetentionDays) + + // EarliestRestoreDate + destination.EarliestRestoreDate = genruntime.ClonePointerToString(backup.EarliestRestoreDate) + + // GeoRedundantBackup + if backup.GeoRedundantBackup != nil { + geoRedundantBackup := string(*backup.GeoRedundantBackup) + destination.GeoRedundantBackup = &geoRedundantBackup + } else { + destination.GeoRedundantBackup = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Data encryption properties of a server +type DataEncryption struct { + // GeoBackupEncryptionKeyStatus: Geo-backup encryption key status for Data encryption enabled server. + GeoBackupEncryptionKeyStatus *DataEncryption_GeoBackupEncryptionKeyStatus `json:"geoBackupEncryptionKeyStatus,omitempty"` + + // GeoBackupKeyURI: URI for the key in keyvault for data encryption for geo-backup of server. + GeoBackupKeyURI *string `json:"geoBackupKeyURI,omitempty"` + + // GeoBackupUserAssignedIdentityReference: Resource Id for the User assigned identity to be used for data encryption for + // geo-backup of server. + GeoBackupUserAssignedIdentityReference *genruntime.ResourceReference `armReference:"GeoBackupUserAssignedIdentityId" json:"geoBackupUserAssignedIdentityReference,omitempty"` + + // PrimaryEncryptionKeyStatus: Primary encryption key status for Data encryption enabled server. + PrimaryEncryptionKeyStatus *DataEncryption_PrimaryEncryptionKeyStatus `json:"primaryEncryptionKeyStatus,omitempty"` + + // PrimaryKeyURI: URI for the key in keyvault for data encryption of the primary server. + PrimaryKeyURI *string `json:"primaryKeyURI,omitempty"` + + // PrimaryUserAssignedIdentityReference: Resource Id for the User assigned identity to be used for data encryption of the + // primary server. + PrimaryUserAssignedIdentityReference *genruntime.ResourceReference `armReference:"PrimaryUserAssignedIdentityId" json:"primaryUserAssignedIdentityReference,omitempty"` + + // Type: Data encryption type to depict if it is System Managed vs Azure Key vault. + Type *DataEncryption_Type `json:"type,omitempty"` +} + +var _ genruntime.ARMTransformer = &DataEncryption{} + +// ConvertToARM converts from a Kubernetes CRD object to an ARM object +func (encryption *DataEncryption) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) { + if encryption == nil { + return nil, nil + } + result := &DataEncryption_ARM{} + + // Set property "GeoBackupEncryptionKeyStatus": + if encryption.GeoBackupEncryptionKeyStatus != nil { + geoBackupEncryptionKeyStatus := *encryption.GeoBackupEncryptionKeyStatus + result.GeoBackupEncryptionKeyStatus = &geoBackupEncryptionKeyStatus + } + + // Set property "GeoBackupKeyURI": + if encryption.GeoBackupKeyURI != nil { + geoBackupKeyURI := *encryption.GeoBackupKeyURI + result.GeoBackupKeyURI = &geoBackupKeyURI + } + + // Set property "GeoBackupUserAssignedIdentityId": + if encryption.GeoBackupUserAssignedIdentityReference != nil { + geoBackupUserAssignedIdentityReferenceARMID, err := resolved.ResolvedReferences.Lookup(*encryption.GeoBackupUserAssignedIdentityReference) + if err != nil { + return nil, err + } + geoBackupUserAssignedIdentityReference := geoBackupUserAssignedIdentityReferenceARMID + result.GeoBackupUserAssignedIdentityId = &geoBackupUserAssignedIdentityReference + } + + // Set property "PrimaryEncryptionKeyStatus": + if encryption.PrimaryEncryptionKeyStatus != nil { + primaryEncryptionKeyStatus := *encryption.PrimaryEncryptionKeyStatus + result.PrimaryEncryptionKeyStatus = &primaryEncryptionKeyStatus + } + + // Set property "PrimaryKeyURI": + if encryption.PrimaryKeyURI != nil { + primaryKeyURI := *encryption.PrimaryKeyURI + result.PrimaryKeyURI = &primaryKeyURI + } + + // Set property "PrimaryUserAssignedIdentityId": + if encryption.PrimaryUserAssignedIdentityReference != nil { + primaryUserAssignedIdentityReferenceARMID, err := resolved.ResolvedReferences.Lookup(*encryption.PrimaryUserAssignedIdentityReference) + if err != nil { + return nil, err + } + primaryUserAssignedIdentityReference := primaryUserAssignedIdentityReferenceARMID + result.PrimaryUserAssignedIdentityId = &primaryUserAssignedIdentityReference + } + + // Set property "Type": + if encryption.Type != nil { + typeVar := *encryption.Type + result.Type = &typeVar + } + return result, nil +} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (encryption *DataEncryption) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &DataEncryption_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (encryption *DataEncryption) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(DataEncryption_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected DataEncryption_ARM, got %T", armInput) + } + + // Set property "GeoBackupEncryptionKeyStatus": + if typedInput.GeoBackupEncryptionKeyStatus != nil { + geoBackupEncryptionKeyStatus := *typedInput.GeoBackupEncryptionKeyStatus + encryption.GeoBackupEncryptionKeyStatus = &geoBackupEncryptionKeyStatus + } + + // Set property "GeoBackupKeyURI": + if typedInput.GeoBackupKeyURI != nil { + geoBackupKeyURI := *typedInput.GeoBackupKeyURI + encryption.GeoBackupKeyURI = &geoBackupKeyURI + } + + // no assignment for property "GeoBackupUserAssignedIdentityReference" + + // Set property "PrimaryEncryptionKeyStatus": + if typedInput.PrimaryEncryptionKeyStatus != nil { + primaryEncryptionKeyStatus := *typedInput.PrimaryEncryptionKeyStatus + encryption.PrimaryEncryptionKeyStatus = &primaryEncryptionKeyStatus + } + + // Set property "PrimaryKeyURI": + if typedInput.PrimaryKeyURI != nil { + primaryKeyURI := *typedInput.PrimaryKeyURI + encryption.PrimaryKeyURI = &primaryKeyURI + } + + // no assignment for property "PrimaryUserAssignedIdentityReference" + + // Set property "Type": + if typedInput.Type != nil { + typeVar := *typedInput.Type + encryption.Type = &typeVar + } + + // No error + return nil +} + +// AssignProperties_From_DataEncryption populates our DataEncryption from the provided source DataEncryption +func (encryption *DataEncryption) AssignProperties_From_DataEncryption(source *v20230601ps.DataEncryption) error { + + // GeoBackupEncryptionKeyStatus + if source.GeoBackupEncryptionKeyStatus != nil { + geoBackupEncryptionKeyStatus := DataEncryption_GeoBackupEncryptionKeyStatus(*source.GeoBackupEncryptionKeyStatus) + encryption.GeoBackupEncryptionKeyStatus = &geoBackupEncryptionKeyStatus + } else { + encryption.GeoBackupEncryptionKeyStatus = nil + } + + // GeoBackupKeyURI + encryption.GeoBackupKeyURI = genruntime.ClonePointerToString(source.GeoBackupKeyURI) + + // GeoBackupUserAssignedIdentityReference + if source.GeoBackupUserAssignedIdentityReference != nil { + geoBackupUserAssignedIdentityReference := source.GeoBackupUserAssignedIdentityReference.Copy() + encryption.GeoBackupUserAssignedIdentityReference = &geoBackupUserAssignedIdentityReference + } else { + encryption.GeoBackupUserAssignedIdentityReference = nil + } + + // PrimaryEncryptionKeyStatus + if source.PrimaryEncryptionKeyStatus != nil { + primaryEncryptionKeyStatus := DataEncryption_PrimaryEncryptionKeyStatus(*source.PrimaryEncryptionKeyStatus) + encryption.PrimaryEncryptionKeyStatus = &primaryEncryptionKeyStatus + } else { + encryption.PrimaryEncryptionKeyStatus = nil + } + + // PrimaryKeyURI + encryption.PrimaryKeyURI = genruntime.ClonePointerToString(source.PrimaryKeyURI) + + // PrimaryUserAssignedIdentityReference + if source.PrimaryUserAssignedIdentityReference != nil { + primaryUserAssignedIdentityReference := source.PrimaryUserAssignedIdentityReference.Copy() + encryption.PrimaryUserAssignedIdentityReference = &primaryUserAssignedIdentityReference + } else { + encryption.PrimaryUserAssignedIdentityReference = nil + } + + // Type + if source.Type != nil { + typeVar := DataEncryption_Type(*source.Type) + encryption.Type = &typeVar + } else { + encryption.Type = nil + } + + // No error + return nil +} + +// AssignProperties_To_DataEncryption populates the provided destination DataEncryption from our DataEncryption +func (encryption *DataEncryption) AssignProperties_To_DataEncryption(destination *v20230601ps.DataEncryption) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // GeoBackupEncryptionKeyStatus + if encryption.GeoBackupEncryptionKeyStatus != nil { + geoBackupEncryptionKeyStatus := string(*encryption.GeoBackupEncryptionKeyStatus) + destination.GeoBackupEncryptionKeyStatus = &geoBackupEncryptionKeyStatus + } else { + destination.GeoBackupEncryptionKeyStatus = nil + } + + // GeoBackupKeyURI + destination.GeoBackupKeyURI = genruntime.ClonePointerToString(encryption.GeoBackupKeyURI) + + // GeoBackupUserAssignedIdentityReference + if encryption.GeoBackupUserAssignedIdentityReference != nil { + geoBackupUserAssignedIdentityReference := encryption.GeoBackupUserAssignedIdentityReference.Copy() + destination.GeoBackupUserAssignedIdentityReference = &geoBackupUserAssignedIdentityReference + } else { + destination.GeoBackupUserAssignedIdentityReference = nil + } + + // PrimaryEncryptionKeyStatus + if encryption.PrimaryEncryptionKeyStatus != nil { + primaryEncryptionKeyStatus := string(*encryption.PrimaryEncryptionKeyStatus) + destination.PrimaryEncryptionKeyStatus = &primaryEncryptionKeyStatus + } else { + destination.PrimaryEncryptionKeyStatus = nil + } + + // PrimaryKeyURI + destination.PrimaryKeyURI = genruntime.ClonePointerToString(encryption.PrimaryKeyURI) + + // PrimaryUserAssignedIdentityReference + if encryption.PrimaryUserAssignedIdentityReference != nil { + primaryUserAssignedIdentityReference := encryption.PrimaryUserAssignedIdentityReference.Copy() + destination.PrimaryUserAssignedIdentityReference = &primaryUserAssignedIdentityReference + } else { + destination.PrimaryUserAssignedIdentityReference = nil + } + + // Type + if encryption.Type != nil { + typeVar := string(*encryption.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 +} + +// Data encryption properties of a server +type DataEncryption_STATUS struct { + // GeoBackupEncryptionKeyStatus: Geo-backup encryption key status for Data encryption enabled server. + GeoBackupEncryptionKeyStatus *DataEncryption_GeoBackupEncryptionKeyStatus_STATUS `json:"geoBackupEncryptionKeyStatus,omitempty"` + + // GeoBackupKeyURI: URI for the key in keyvault for data encryption for geo-backup of server. + GeoBackupKeyURI *string `json:"geoBackupKeyURI,omitempty"` + + // GeoBackupUserAssignedIdentityId: Resource Id for the User assigned identity to be used for data encryption for + // geo-backup of server. + GeoBackupUserAssignedIdentityId *string `json:"geoBackupUserAssignedIdentityId,omitempty"` + + // PrimaryEncryptionKeyStatus: Primary encryption key status for Data encryption enabled server. + PrimaryEncryptionKeyStatus *DataEncryption_PrimaryEncryptionKeyStatus_STATUS `json:"primaryEncryptionKeyStatus,omitempty"` + + // PrimaryKeyURI: URI for the key in keyvault for data encryption of the primary server. + PrimaryKeyURI *string `json:"primaryKeyURI,omitempty"` + + // PrimaryUserAssignedIdentityId: Resource Id for the User assigned identity to be used for data encryption of the primary + // server. + PrimaryUserAssignedIdentityId *string `json:"primaryUserAssignedIdentityId,omitempty"` + + // Type: Data encryption type to depict if it is System Managed vs Azure Key vault. + Type *DataEncryption_Type_STATUS `json:"type,omitempty"` +} + +var _ genruntime.FromARMConverter = &DataEncryption_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (encryption *DataEncryption_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &DataEncryption_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (encryption *DataEncryption_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(DataEncryption_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected DataEncryption_STATUS_ARM, got %T", armInput) + } + + // Set property "GeoBackupEncryptionKeyStatus": + if typedInput.GeoBackupEncryptionKeyStatus != nil { + geoBackupEncryptionKeyStatus := *typedInput.GeoBackupEncryptionKeyStatus + encryption.GeoBackupEncryptionKeyStatus = &geoBackupEncryptionKeyStatus + } + + // Set property "GeoBackupKeyURI": + if typedInput.GeoBackupKeyURI != nil { + geoBackupKeyURI := *typedInput.GeoBackupKeyURI + encryption.GeoBackupKeyURI = &geoBackupKeyURI + } + + // Set property "GeoBackupUserAssignedIdentityId": + if typedInput.GeoBackupUserAssignedIdentityId != nil { + geoBackupUserAssignedIdentityId := *typedInput.GeoBackupUserAssignedIdentityId + encryption.GeoBackupUserAssignedIdentityId = &geoBackupUserAssignedIdentityId + } + + // Set property "PrimaryEncryptionKeyStatus": + if typedInput.PrimaryEncryptionKeyStatus != nil { + primaryEncryptionKeyStatus := *typedInput.PrimaryEncryptionKeyStatus + encryption.PrimaryEncryptionKeyStatus = &primaryEncryptionKeyStatus + } + + // Set property "PrimaryKeyURI": + if typedInput.PrimaryKeyURI != nil { + primaryKeyURI := *typedInput.PrimaryKeyURI + encryption.PrimaryKeyURI = &primaryKeyURI + } + + // Set property "PrimaryUserAssignedIdentityId": + if typedInput.PrimaryUserAssignedIdentityId != nil { + primaryUserAssignedIdentityId := *typedInput.PrimaryUserAssignedIdentityId + encryption.PrimaryUserAssignedIdentityId = &primaryUserAssignedIdentityId + } + + // Set property "Type": + if typedInput.Type != nil { + typeVar := *typedInput.Type + encryption.Type = &typeVar + } + + // No error + return nil +} + +// AssignProperties_From_DataEncryption_STATUS populates our DataEncryption_STATUS from the provided source DataEncryption_STATUS +func (encryption *DataEncryption_STATUS) AssignProperties_From_DataEncryption_STATUS(source *v20230601ps.DataEncryption_STATUS) error { + + // GeoBackupEncryptionKeyStatus + if source.GeoBackupEncryptionKeyStatus != nil { + geoBackupEncryptionKeyStatus := DataEncryption_GeoBackupEncryptionKeyStatus_STATUS(*source.GeoBackupEncryptionKeyStatus) + encryption.GeoBackupEncryptionKeyStatus = &geoBackupEncryptionKeyStatus + } else { + encryption.GeoBackupEncryptionKeyStatus = nil + } + + // GeoBackupKeyURI + encryption.GeoBackupKeyURI = genruntime.ClonePointerToString(source.GeoBackupKeyURI) + + // GeoBackupUserAssignedIdentityId + encryption.GeoBackupUserAssignedIdentityId = genruntime.ClonePointerToString(source.GeoBackupUserAssignedIdentityId) + + // PrimaryEncryptionKeyStatus + if source.PrimaryEncryptionKeyStatus != nil { + primaryEncryptionKeyStatus := DataEncryption_PrimaryEncryptionKeyStatus_STATUS(*source.PrimaryEncryptionKeyStatus) + encryption.PrimaryEncryptionKeyStatus = &primaryEncryptionKeyStatus + } else { + encryption.PrimaryEncryptionKeyStatus = nil + } + + // PrimaryKeyURI + encryption.PrimaryKeyURI = genruntime.ClonePointerToString(source.PrimaryKeyURI) + + // PrimaryUserAssignedIdentityId + encryption.PrimaryUserAssignedIdentityId = genruntime.ClonePointerToString(source.PrimaryUserAssignedIdentityId) + + // Type + if source.Type != nil { + typeVar := DataEncryption_Type_STATUS(*source.Type) + encryption.Type = &typeVar + } else { + encryption.Type = nil + } + + // No error + return nil +} + +// AssignProperties_To_DataEncryption_STATUS populates the provided destination DataEncryption_STATUS from our DataEncryption_STATUS +func (encryption *DataEncryption_STATUS) AssignProperties_To_DataEncryption_STATUS(destination *v20230601ps.DataEncryption_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // GeoBackupEncryptionKeyStatus + if encryption.GeoBackupEncryptionKeyStatus != nil { + geoBackupEncryptionKeyStatus := string(*encryption.GeoBackupEncryptionKeyStatus) + destination.GeoBackupEncryptionKeyStatus = &geoBackupEncryptionKeyStatus + } else { + destination.GeoBackupEncryptionKeyStatus = nil + } + + // GeoBackupKeyURI + destination.GeoBackupKeyURI = genruntime.ClonePointerToString(encryption.GeoBackupKeyURI) + + // GeoBackupUserAssignedIdentityId + destination.GeoBackupUserAssignedIdentityId = genruntime.ClonePointerToString(encryption.GeoBackupUserAssignedIdentityId) + + // PrimaryEncryptionKeyStatus + if encryption.PrimaryEncryptionKeyStatus != nil { + primaryEncryptionKeyStatus := string(*encryption.PrimaryEncryptionKeyStatus) + destination.PrimaryEncryptionKeyStatus = &primaryEncryptionKeyStatus + } else { + destination.PrimaryEncryptionKeyStatus = nil + } + + // PrimaryKeyURI + destination.PrimaryKeyURI = genruntime.ClonePointerToString(encryption.PrimaryKeyURI) + + // PrimaryUserAssignedIdentityId + destination.PrimaryUserAssignedIdentityId = genruntime.ClonePointerToString(encryption.PrimaryUserAssignedIdentityId) + + // Type + if encryption.Type != nil { + typeVar := string(*encryption.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 +} + +// Details for configuring operator behavior. Fields in this struct are interpreted by the operator directly rather than being passed to Azure +type FlexibleServerOperatorSpec struct { + // ConfigMaps: configures where to place operator written ConfigMaps. + ConfigMaps *FlexibleServerOperatorConfigMaps `json:"configMaps,omitempty"` + + // Secrets: configures where to place Azure generated secrets. + Secrets *FlexibleServerOperatorSecrets `json:"secrets,omitempty"` +} + +// AssignProperties_From_FlexibleServerOperatorSpec populates our FlexibleServerOperatorSpec from the provided source FlexibleServerOperatorSpec +func (operator *FlexibleServerOperatorSpec) AssignProperties_From_FlexibleServerOperatorSpec(source *v20230601ps.FlexibleServerOperatorSpec) error { + + // ConfigMaps + if source.ConfigMaps != nil { + var configMap FlexibleServerOperatorConfigMaps + err := configMap.AssignProperties_From_FlexibleServerOperatorConfigMaps(source.ConfigMaps) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_FlexibleServerOperatorConfigMaps() to populate field ConfigMaps") + } + operator.ConfigMaps = &configMap + } else { + operator.ConfigMaps = nil + } + + // Secrets + if source.Secrets != nil { + var secret FlexibleServerOperatorSecrets + err := secret.AssignProperties_From_FlexibleServerOperatorSecrets(source.Secrets) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_FlexibleServerOperatorSecrets() to populate field Secrets") + } + operator.Secrets = &secret + } else { + operator.Secrets = nil + } + + // No error + return nil +} + +// AssignProperties_To_FlexibleServerOperatorSpec populates the provided destination FlexibleServerOperatorSpec from our FlexibleServerOperatorSpec +func (operator *FlexibleServerOperatorSpec) AssignProperties_To_FlexibleServerOperatorSpec(destination *v20230601ps.FlexibleServerOperatorSpec) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // ConfigMaps + if operator.ConfigMaps != nil { + var configMap v20230601ps.FlexibleServerOperatorConfigMaps + err := operator.ConfigMaps.AssignProperties_To_FlexibleServerOperatorConfigMaps(&configMap) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_FlexibleServerOperatorConfigMaps() to populate field ConfigMaps") + } + destination.ConfigMaps = &configMap + } else { + destination.ConfigMaps = nil + } + + // Secrets + if operator.Secrets != nil { + var secret v20230601ps.FlexibleServerOperatorSecrets + err := operator.Secrets.AssignProperties_To_FlexibleServerOperatorSecrets(&secret) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_FlexibleServerOperatorSecrets() to populate field Secrets") + } + destination.Secrets = &secret + } else { + destination.Secrets = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// High availability properties of a server +type HighAvailability struct { + // Mode: The HA mode for the server. + Mode *HighAvailability_Mode `json:"mode,omitempty"` + + // StandbyAvailabilityZone: availability zone information of the standby. + StandbyAvailabilityZone *string `json:"standbyAvailabilityZone,omitempty"` +} + +var _ genruntime.ARMTransformer = &HighAvailability{} + +// ConvertToARM converts from a Kubernetes CRD object to an ARM object +func (availability *HighAvailability) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) { + if availability == nil { + return nil, nil + } + result := &HighAvailability_ARM{} + + // Set property "Mode": + if availability.Mode != nil { + mode := *availability.Mode + result.Mode = &mode + } + + // Set property "StandbyAvailabilityZone": + if availability.StandbyAvailabilityZone != nil { + standbyAvailabilityZone := *availability.StandbyAvailabilityZone + result.StandbyAvailabilityZone = &standbyAvailabilityZone + } + return result, nil +} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (availability *HighAvailability) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &HighAvailability_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (availability *HighAvailability) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(HighAvailability_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected HighAvailability_ARM, got %T", armInput) + } + + // Set property "Mode": + if typedInput.Mode != nil { + mode := *typedInput.Mode + availability.Mode = &mode + } + + // Set property "StandbyAvailabilityZone": + if typedInput.StandbyAvailabilityZone != nil { + standbyAvailabilityZone := *typedInput.StandbyAvailabilityZone + availability.StandbyAvailabilityZone = &standbyAvailabilityZone + } + + // No error + return nil +} + +// AssignProperties_From_HighAvailability populates our HighAvailability from the provided source HighAvailability +func (availability *HighAvailability) AssignProperties_From_HighAvailability(source *v20230601ps.HighAvailability) error { + + // Mode + if source.Mode != nil { + mode := HighAvailability_Mode(*source.Mode) + availability.Mode = &mode + } else { + availability.Mode = nil + } + + // StandbyAvailabilityZone + availability.StandbyAvailabilityZone = genruntime.ClonePointerToString(source.StandbyAvailabilityZone) + + // No error + return nil +} + +// AssignProperties_To_HighAvailability populates the provided destination HighAvailability from our HighAvailability +func (availability *HighAvailability) AssignProperties_To_HighAvailability(destination *v20230601ps.HighAvailability) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // Mode + if availability.Mode != nil { + mode := string(*availability.Mode) + destination.Mode = &mode + } else { + destination.Mode = nil + } + + // StandbyAvailabilityZone + destination.StandbyAvailabilityZone = genruntime.ClonePointerToString(availability.StandbyAvailabilityZone) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// High availability properties of a server +type HighAvailability_STATUS struct { + // Mode: The HA mode for the server. + Mode *HighAvailability_Mode_STATUS `json:"mode,omitempty"` + + // StandbyAvailabilityZone: availability zone information of the standby. + StandbyAvailabilityZone *string `json:"standbyAvailabilityZone,omitempty"` + + // State: A state of a HA server that is visible to user. + State *HighAvailability_State_STATUS `json:"state,omitempty"` +} + +var _ genruntime.FromARMConverter = &HighAvailability_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (availability *HighAvailability_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &HighAvailability_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (availability *HighAvailability_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(HighAvailability_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected HighAvailability_STATUS_ARM, got %T", armInput) + } + + // Set property "Mode": + if typedInput.Mode != nil { + mode := *typedInput.Mode + availability.Mode = &mode + } + + // Set property "StandbyAvailabilityZone": + if typedInput.StandbyAvailabilityZone != nil { + standbyAvailabilityZone := *typedInput.StandbyAvailabilityZone + availability.StandbyAvailabilityZone = &standbyAvailabilityZone + } + + // Set property "State": + if typedInput.State != nil { + state := *typedInput.State + availability.State = &state + } + + // No error + return nil +} + +// AssignProperties_From_HighAvailability_STATUS populates our HighAvailability_STATUS from the provided source HighAvailability_STATUS +func (availability *HighAvailability_STATUS) AssignProperties_From_HighAvailability_STATUS(source *v20230601ps.HighAvailability_STATUS) error { + + // Mode + if source.Mode != nil { + mode := HighAvailability_Mode_STATUS(*source.Mode) + availability.Mode = &mode + } else { + availability.Mode = nil + } + + // StandbyAvailabilityZone + availability.StandbyAvailabilityZone = genruntime.ClonePointerToString(source.StandbyAvailabilityZone) + + // State + if source.State != nil { + state := HighAvailability_State_STATUS(*source.State) + availability.State = &state + } else { + availability.State = nil + } + + // No error + return nil +} + +// AssignProperties_To_HighAvailability_STATUS populates the provided destination HighAvailability_STATUS from our HighAvailability_STATUS +func (availability *HighAvailability_STATUS) AssignProperties_To_HighAvailability_STATUS(destination *v20230601ps.HighAvailability_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // Mode + if availability.Mode != nil { + mode := string(*availability.Mode) + destination.Mode = &mode + } else { + destination.Mode = nil + } + + // StandbyAvailabilityZone + destination.StandbyAvailabilityZone = genruntime.ClonePointerToString(availability.StandbyAvailabilityZone) + + // State + if availability.State != nil { + state := string(*availability.State) + destination.State = &state + } else { + destination.State = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Maintenance window properties of a server. +type MaintenanceWindow struct { + // CustomWindow: indicates whether custom window is enabled or disabled + CustomWindow *string `json:"customWindow,omitempty"` + + // DayOfWeek: day of week for maintenance window + DayOfWeek *int `json:"dayOfWeek,omitempty"` + + // StartHour: start hour for maintenance window + StartHour *int `json:"startHour,omitempty"` + + // StartMinute: start minute for maintenance window + StartMinute *int `json:"startMinute,omitempty"` +} + +var _ genruntime.ARMTransformer = &MaintenanceWindow{} + +// ConvertToARM converts from a Kubernetes CRD object to an ARM object +func (window *MaintenanceWindow) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) { + if window == nil { + return nil, nil + } + result := &MaintenanceWindow_ARM{} + + // Set property "CustomWindow": + if window.CustomWindow != nil { + customWindow := *window.CustomWindow + result.CustomWindow = &customWindow + } + + // Set property "DayOfWeek": + if window.DayOfWeek != nil { + dayOfWeek := *window.DayOfWeek + result.DayOfWeek = &dayOfWeek + } + + // Set property "StartHour": + if window.StartHour != nil { + startHour := *window.StartHour + result.StartHour = &startHour + } + + // Set property "StartMinute": + if window.StartMinute != nil { + startMinute := *window.StartMinute + result.StartMinute = &startMinute + } + return result, nil +} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (window *MaintenanceWindow) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &MaintenanceWindow_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (window *MaintenanceWindow) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(MaintenanceWindow_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected MaintenanceWindow_ARM, got %T", armInput) + } + + // Set property "CustomWindow": + if typedInput.CustomWindow != nil { + customWindow := *typedInput.CustomWindow + window.CustomWindow = &customWindow + } + + // Set property "DayOfWeek": + if typedInput.DayOfWeek != nil { + dayOfWeek := *typedInput.DayOfWeek + window.DayOfWeek = &dayOfWeek + } + + // Set property "StartHour": + if typedInput.StartHour != nil { + startHour := *typedInput.StartHour + window.StartHour = &startHour + } + + // Set property "StartMinute": + if typedInput.StartMinute != nil { + startMinute := *typedInput.StartMinute + window.StartMinute = &startMinute + } + + // No error + return nil +} + +// AssignProperties_From_MaintenanceWindow populates our MaintenanceWindow from the provided source MaintenanceWindow +func (window *MaintenanceWindow) AssignProperties_From_MaintenanceWindow(source *v20230601ps.MaintenanceWindow) error { + + // CustomWindow + window.CustomWindow = genruntime.ClonePointerToString(source.CustomWindow) + + // DayOfWeek + window.DayOfWeek = genruntime.ClonePointerToInt(source.DayOfWeek) + + // StartHour + window.StartHour = genruntime.ClonePointerToInt(source.StartHour) + + // StartMinute + window.StartMinute = genruntime.ClonePointerToInt(source.StartMinute) + + // No error + return nil +} + +// AssignProperties_To_MaintenanceWindow populates the provided destination MaintenanceWindow from our MaintenanceWindow +func (window *MaintenanceWindow) AssignProperties_To_MaintenanceWindow(destination *v20230601ps.MaintenanceWindow) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // CustomWindow + destination.CustomWindow = genruntime.ClonePointerToString(window.CustomWindow) + + // DayOfWeek + destination.DayOfWeek = genruntime.ClonePointerToInt(window.DayOfWeek) + + // StartHour + destination.StartHour = genruntime.ClonePointerToInt(window.StartHour) + + // StartMinute + destination.StartMinute = genruntime.ClonePointerToInt(window.StartMinute) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Maintenance window properties of a server. +type MaintenanceWindow_STATUS struct { + // CustomWindow: indicates whether custom window is enabled or disabled + CustomWindow *string `json:"customWindow,omitempty"` + + // DayOfWeek: day of week for maintenance window + DayOfWeek *int `json:"dayOfWeek,omitempty"` + + // StartHour: start hour for maintenance window + StartHour *int `json:"startHour,omitempty"` + + // StartMinute: start minute for maintenance window + StartMinute *int `json:"startMinute,omitempty"` +} + +var _ genruntime.FromARMConverter = &MaintenanceWindow_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (window *MaintenanceWindow_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &MaintenanceWindow_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (window *MaintenanceWindow_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(MaintenanceWindow_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected MaintenanceWindow_STATUS_ARM, got %T", armInput) + } + + // Set property "CustomWindow": + if typedInput.CustomWindow != nil { + customWindow := *typedInput.CustomWindow + window.CustomWindow = &customWindow + } + + // Set property "DayOfWeek": + if typedInput.DayOfWeek != nil { + dayOfWeek := *typedInput.DayOfWeek + window.DayOfWeek = &dayOfWeek + } + + // Set property "StartHour": + if typedInput.StartHour != nil { + startHour := *typedInput.StartHour + window.StartHour = &startHour + } + + // Set property "StartMinute": + if typedInput.StartMinute != nil { + startMinute := *typedInput.StartMinute + window.StartMinute = &startMinute + } + + // No error + return nil +} + +// AssignProperties_From_MaintenanceWindow_STATUS populates our MaintenanceWindow_STATUS from the provided source MaintenanceWindow_STATUS +func (window *MaintenanceWindow_STATUS) AssignProperties_From_MaintenanceWindow_STATUS(source *v20230601ps.MaintenanceWindow_STATUS) error { + + // CustomWindow + window.CustomWindow = genruntime.ClonePointerToString(source.CustomWindow) + + // DayOfWeek + window.DayOfWeek = genruntime.ClonePointerToInt(source.DayOfWeek) + + // StartHour + window.StartHour = genruntime.ClonePointerToInt(source.StartHour) + + // StartMinute + window.StartMinute = genruntime.ClonePointerToInt(source.StartMinute) + + // No error + return nil +} + +// AssignProperties_To_MaintenanceWindow_STATUS populates the provided destination MaintenanceWindow_STATUS from our MaintenanceWindow_STATUS +func (window *MaintenanceWindow_STATUS) AssignProperties_To_MaintenanceWindow_STATUS(destination *v20230601ps.MaintenanceWindow_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // CustomWindow + destination.CustomWindow = genruntime.ClonePointerToString(window.CustomWindow) + + // DayOfWeek + destination.DayOfWeek = genruntime.ClonePointerToInt(window.DayOfWeek) + + // StartHour + destination.StartHour = genruntime.ClonePointerToInt(window.StartHour) + + // StartMinute + destination.StartMinute = genruntime.ClonePointerToInt(window.StartMinute) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Network properties of a server. +type Network struct { + // DelegatedSubnetResourceReference: Delegated subnet arm resource id. This is required to be passed during create, in case + // we want the server to be VNET injected, i.e. Private access server. During update, pass this only if we want to update + // the value for Private DNS zone. + DelegatedSubnetResourceReference *genruntime.ResourceReference `armReference:"DelegatedSubnetResourceId" json:"delegatedSubnetResourceReference,omitempty"` + + // PrivateDnsZoneArmResourceReference: Private dns zone arm resource id. This is required to be passed during create, in + // case we want the server to be VNET injected, i.e. Private access server. During update, pass this only if we want to + // update the value for Private DNS zone. + PrivateDnsZoneArmResourceReference *genruntime.ResourceReference `armReference:"PrivateDnsZoneArmResourceId" json:"privateDnsZoneArmResourceReference,omitempty"` + + // PublicNetworkAccess: public network access is enabled or not + PublicNetworkAccess *Network_PublicNetworkAccess `json:"publicNetworkAccess,omitempty"` +} + +var _ genruntime.ARMTransformer = &Network{} + +// ConvertToARM converts from a Kubernetes CRD object to an ARM object +func (network *Network) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) { + if network == nil { + return nil, nil + } + result := &Network_ARM{} + + // Set property "DelegatedSubnetResourceId": + if network.DelegatedSubnetResourceReference != nil { + delegatedSubnetResourceReferenceARMID, err := resolved.ResolvedReferences.Lookup(*network.DelegatedSubnetResourceReference) + if err != nil { + return nil, err + } + delegatedSubnetResourceReference := delegatedSubnetResourceReferenceARMID + result.DelegatedSubnetResourceId = &delegatedSubnetResourceReference + } + + // Set property "PrivateDnsZoneArmResourceId": + if network.PrivateDnsZoneArmResourceReference != nil { + privateDnsZoneArmResourceReferenceARMID, err := resolved.ResolvedReferences.Lookup(*network.PrivateDnsZoneArmResourceReference) + if err != nil { + return nil, err + } + privateDnsZoneArmResourceReference := privateDnsZoneArmResourceReferenceARMID + result.PrivateDnsZoneArmResourceId = &privateDnsZoneArmResourceReference + } + + // Set property "PublicNetworkAccess": + if network.PublicNetworkAccess != nil { + publicNetworkAccess := *network.PublicNetworkAccess + result.PublicNetworkAccess = &publicNetworkAccess + } + return result, nil +} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (network *Network) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &Network_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (network *Network) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(Network_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected Network_ARM, got %T", armInput) + } + + // no assignment for property "DelegatedSubnetResourceReference" + + // no assignment for property "PrivateDnsZoneArmResourceReference" + + // Set property "PublicNetworkAccess": + if typedInput.PublicNetworkAccess != nil { + publicNetworkAccess := *typedInput.PublicNetworkAccess + network.PublicNetworkAccess = &publicNetworkAccess + } + + // No error + return nil +} + +// AssignProperties_From_Network populates our Network from the provided source Network +func (network *Network) AssignProperties_From_Network(source *v20230601ps.Network) error { + + // DelegatedSubnetResourceReference + if source.DelegatedSubnetResourceReference != nil { + delegatedSubnetResourceReference := source.DelegatedSubnetResourceReference.Copy() + network.DelegatedSubnetResourceReference = &delegatedSubnetResourceReference + } else { + network.DelegatedSubnetResourceReference = nil + } + + // PrivateDnsZoneArmResourceReference + if source.PrivateDnsZoneArmResourceReference != nil { + privateDnsZoneArmResourceReference := source.PrivateDnsZoneArmResourceReference.Copy() + network.PrivateDnsZoneArmResourceReference = &privateDnsZoneArmResourceReference + } else { + network.PrivateDnsZoneArmResourceReference = nil + } + + // PublicNetworkAccess + if source.PublicNetworkAccess != nil { + publicNetworkAccess := Network_PublicNetworkAccess(*source.PublicNetworkAccess) + network.PublicNetworkAccess = &publicNetworkAccess + } else { + network.PublicNetworkAccess = nil + } + + // No error + return nil +} + +// AssignProperties_To_Network populates the provided destination Network from our Network +func (network *Network) AssignProperties_To_Network(destination *v20230601ps.Network) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // DelegatedSubnetResourceReference + if network.DelegatedSubnetResourceReference != nil { + delegatedSubnetResourceReference := network.DelegatedSubnetResourceReference.Copy() + destination.DelegatedSubnetResourceReference = &delegatedSubnetResourceReference + } else { + destination.DelegatedSubnetResourceReference = nil + } + + // PrivateDnsZoneArmResourceReference + if network.PrivateDnsZoneArmResourceReference != nil { + privateDnsZoneArmResourceReference := network.PrivateDnsZoneArmResourceReference.Copy() + destination.PrivateDnsZoneArmResourceReference = &privateDnsZoneArmResourceReference + } else { + destination.PrivateDnsZoneArmResourceReference = nil + } + + // PublicNetworkAccess + if network.PublicNetworkAccess != nil { + publicNetworkAccess := string(*network.PublicNetworkAccess) + destination.PublicNetworkAccess = &publicNetworkAccess + } else { + destination.PublicNetworkAccess = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Network properties of a server. +type Network_STATUS struct { + // DelegatedSubnetResourceId: Delegated subnet arm resource id. This is required to be passed during create, in case we + // want the server to be VNET injected, i.e. Private access server. During update, pass this only if we want to update the + // value for Private DNS zone. + DelegatedSubnetResourceId *string `json:"delegatedSubnetResourceId,omitempty"` + + // PrivateDnsZoneArmResourceId: Private dns zone arm resource id. This is required to be passed during create, in case we + // want the server to be VNET injected, i.e. Private access server. During update, pass this only if we want to update the + // value for Private DNS zone. + PrivateDnsZoneArmResourceId *string `json:"privateDnsZoneArmResourceId,omitempty"` + + // PublicNetworkAccess: public network access is enabled or not + PublicNetworkAccess *Network_PublicNetworkAccess_STATUS `json:"publicNetworkAccess,omitempty"` +} + +var _ genruntime.FromARMConverter = &Network_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (network *Network_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &Network_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (network *Network_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(Network_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected Network_STATUS_ARM, got %T", armInput) + } + + // Set property "DelegatedSubnetResourceId": + if typedInput.DelegatedSubnetResourceId != nil { + delegatedSubnetResourceId := *typedInput.DelegatedSubnetResourceId + network.DelegatedSubnetResourceId = &delegatedSubnetResourceId + } + + // Set property "PrivateDnsZoneArmResourceId": + if typedInput.PrivateDnsZoneArmResourceId != nil { + privateDnsZoneArmResourceId := *typedInput.PrivateDnsZoneArmResourceId + network.PrivateDnsZoneArmResourceId = &privateDnsZoneArmResourceId + } + + // Set property "PublicNetworkAccess": + if typedInput.PublicNetworkAccess != nil { + publicNetworkAccess := *typedInput.PublicNetworkAccess + network.PublicNetworkAccess = &publicNetworkAccess + } + + // No error + return nil +} + +// AssignProperties_From_Network_STATUS populates our Network_STATUS from the provided source Network_STATUS +func (network *Network_STATUS) AssignProperties_From_Network_STATUS(source *v20230601ps.Network_STATUS) error { + + // DelegatedSubnetResourceId + network.DelegatedSubnetResourceId = genruntime.ClonePointerToString(source.DelegatedSubnetResourceId) + + // PrivateDnsZoneArmResourceId + network.PrivateDnsZoneArmResourceId = genruntime.ClonePointerToString(source.PrivateDnsZoneArmResourceId) + + // PublicNetworkAccess + if source.PublicNetworkAccess != nil { + publicNetworkAccess := Network_PublicNetworkAccess_STATUS(*source.PublicNetworkAccess) + network.PublicNetworkAccess = &publicNetworkAccess + } else { + network.PublicNetworkAccess = nil + } + + // No error + return nil +} + +// AssignProperties_To_Network_STATUS populates the provided destination Network_STATUS from our Network_STATUS +func (network *Network_STATUS) AssignProperties_To_Network_STATUS(destination *v20230601ps.Network_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // DelegatedSubnetResourceId + destination.DelegatedSubnetResourceId = genruntime.ClonePointerToString(network.DelegatedSubnetResourceId) + + // PrivateDnsZoneArmResourceId + destination.PrivateDnsZoneArmResourceId = genruntime.ClonePointerToString(network.PrivateDnsZoneArmResourceId) + + // PublicNetworkAccess + if network.PublicNetworkAccess != nil { + publicNetworkAccess := string(*network.PublicNetworkAccess) + destination.PublicNetworkAccess = &publicNetworkAccess + } else { + destination.PublicNetworkAccess = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// The private endpoint connection resource. +type PrivateEndpointConnection_STATUS struct { + // Id: Fully qualified resource ID for the resource. E.g. + // "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" + Id *string `json:"id,omitempty"` +} + +var _ genruntime.FromARMConverter = &PrivateEndpointConnection_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (connection *PrivateEndpointConnection_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &PrivateEndpointConnection_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (connection *PrivateEndpointConnection_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(PrivateEndpointConnection_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected PrivateEndpointConnection_STATUS_ARM, got %T", armInput) + } + + // Set property "Id": + if typedInput.Id != nil { + id := *typedInput.Id + connection.Id = &id + } + + // No error + return nil +} + +// AssignProperties_From_PrivateEndpointConnection_STATUS populates our PrivateEndpointConnection_STATUS from the provided source PrivateEndpointConnection_STATUS +func (connection *PrivateEndpointConnection_STATUS) AssignProperties_From_PrivateEndpointConnection_STATUS(source *v20230601ps.PrivateEndpointConnection_STATUS) error { + + // Id + connection.Id = genruntime.ClonePointerToString(source.Id) + + // No error + return nil +} + +// AssignProperties_To_PrivateEndpointConnection_STATUS populates the provided destination PrivateEndpointConnection_STATUS from our PrivateEndpointConnection_STATUS +func (connection *PrivateEndpointConnection_STATUS) AssignProperties_To_PrivateEndpointConnection_STATUS(destination *v20230601ps.PrivateEndpointConnection_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // Id + destination.Id = genruntime.ClonePointerToString(connection.Id) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Replica properties of a server +type Replica struct { + // PromoteMode: Sets the promote mode for a replica server. This is a write only property. + PromoteMode *Replica_PromoteMode `json:"promoteMode,omitempty"` + + // PromoteOption: Sets the promote options for a replica server. This is a write only property. + PromoteOption *Replica_PromoteOption `json:"promoteOption,omitempty"` + + // Role: Used to indicate role of the server in replication set. + Role *ReplicationRole `json:"role,omitempty"` +} + +var _ genruntime.ARMTransformer = &Replica{} + +// ConvertToARM converts from a Kubernetes CRD object to an ARM object +func (replica *Replica) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) { + if replica == nil { + return nil, nil + } + result := &Replica_ARM{} + + // Set property "PromoteMode": + if replica.PromoteMode != nil { + promoteMode := *replica.PromoteMode + result.PromoteMode = &promoteMode + } + + // Set property "PromoteOption": + if replica.PromoteOption != nil { + promoteOption := *replica.PromoteOption + result.PromoteOption = &promoteOption + } + + // Set property "Role": + if replica.Role != nil { + role := *replica.Role + result.Role = &role + } + return result, nil +} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (replica *Replica) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &Replica_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (replica *Replica) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(Replica_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected Replica_ARM, got %T", armInput) + } + + // Set property "PromoteMode": + if typedInput.PromoteMode != nil { + promoteMode := *typedInput.PromoteMode + replica.PromoteMode = &promoteMode + } + + // Set property "PromoteOption": + if typedInput.PromoteOption != nil { + promoteOption := *typedInput.PromoteOption + replica.PromoteOption = &promoteOption + } + + // Set property "Role": + if typedInput.Role != nil { + role := *typedInput.Role + replica.Role = &role + } + + // No error + return nil +} + +// AssignProperties_From_Replica populates our Replica from the provided source Replica +func (replica *Replica) AssignProperties_From_Replica(source *v20230601ps.Replica) error { + + // PromoteMode + if source.PromoteMode != nil { + promoteMode := Replica_PromoteMode(*source.PromoteMode) + replica.PromoteMode = &promoteMode + } else { + replica.PromoteMode = nil + } + + // PromoteOption + if source.PromoteOption != nil { + promoteOption := Replica_PromoteOption(*source.PromoteOption) + replica.PromoteOption = &promoteOption + } else { + replica.PromoteOption = nil + } + + // Role + if source.Role != nil { + role := ReplicationRole(*source.Role) + replica.Role = &role + } else { + replica.Role = nil + } + + // No error + return nil +} + +// AssignProperties_To_Replica populates the provided destination Replica from our Replica +func (replica *Replica) AssignProperties_To_Replica(destination *v20230601ps.Replica) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // PromoteMode + if replica.PromoteMode != nil { + promoteMode := string(*replica.PromoteMode) + destination.PromoteMode = &promoteMode + } else { + destination.PromoteMode = nil + } + + // PromoteOption + if replica.PromoteOption != nil { + promoteOption := string(*replica.PromoteOption) + destination.PromoteOption = &promoteOption + } else { + destination.PromoteOption = nil + } + + // Role + if replica.Role != nil { + role := string(*replica.Role) + destination.Role = &role + } else { + destination.Role = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Replica properties of a server +type Replica_STATUS struct { + // Capacity: Replicas allowed for a server. + Capacity *int `json:"capacity,omitempty"` + + // PromoteMode: Sets the promote mode for a replica server. This is a write only property. + PromoteMode *Replica_PromoteMode_STATUS `json:"promoteMode,omitempty"` + + // PromoteOption: Sets the promote options for a replica server. This is a write only property. + PromoteOption *Replica_PromoteOption_STATUS `json:"promoteOption,omitempty"` + + // ReplicationState: Gets the replication state of a replica server. This property is returned only for replicas api call. + // Supported values are Active, Catchup, Provisioning, Updating, Broken, Reconfiguring + ReplicationState *Replica_ReplicationState_STATUS `json:"replicationState,omitempty"` + + // Role: Used to indicate role of the server in replication set. + Role *ReplicationRole_STATUS `json:"role,omitempty"` +} + +var _ genruntime.FromARMConverter = &Replica_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (replica *Replica_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &Replica_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (replica *Replica_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(Replica_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected Replica_STATUS_ARM, got %T", armInput) + } + + // Set property "Capacity": + if typedInput.Capacity != nil { + capacity := *typedInput.Capacity + replica.Capacity = &capacity + } + + // Set property "PromoteMode": + if typedInput.PromoteMode != nil { + promoteMode := *typedInput.PromoteMode + replica.PromoteMode = &promoteMode + } + + // Set property "PromoteOption": + if typedInput.PromoteOption != nil { + promoteOption := *typedInput.PromoteOption + replica.PromoteOption = &promoteOption + } + + // Set property "ReplicationState": + if typedInput.ReplicationState != nil { + replicationState := *typedInput.ReplicationState + replica.ReplicationState = &replicationState + } + + // Set property "Role": + if typedInput.Role != nil { + role := *typedInput.Role + replica.Role = &role + } + + // No error + return nil +} + +// AssignProperties_From_Replica_STATUS populates our Replica_STATUS from the provided source Replica_STATUS +func (replica *Replica_STATUS) AssignProperties_From_Replica_STATUS(source *v20230601ps.Replica_STATUS) error { + + // Capacity + replica.Capacity = genruntime.ClonePointerToInt(source.Capacity) + + // PromoteMode + if source.PromoteMode != nil { + promoteMode := Replica_PromoteMode_STATUS(*source.PromoteMode) + replica.PromoteMode = &promoteMode + } else { + replica.PromoteMode = nil + } + + // PromoteOption + if source.PromoteOption != nil { + promoteOption := Replica_PromoteOption_STATUS(*source.PromoteOption) + replica.PromoteOption = &promoteOption + } else { + replica.PromoteOption = nil + } + + // ReplicationState + if source.ReplicationState != nil { + replicationState := Replica_ReplicationState_STATUS(*source.ReplicationState) + replica.ReplicationState = &replicationState + } else { + replica.ReplicationState = nil + } + + // Role + if source.Role != nil { + role := ReplicationRole_STATUS(*source.Role) + replica.Role = &role + } else { + replica.Role = nil + } + + // No error + return nil +} + +// AssignProperties_To_Replica_STATUS populates the provided destination Replica_STATUS from our Replica_STATUS +func (replica *Replica_STATUS) AssignProperties_To_Replica_STATUS(destination *v20230601ps.Replica_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // Capacity + destination.Capacity = genruntime.ClonePointerToInt(replica.Capacity) + + // PromoteMode + if replica.PromoteMode != nil { + promoteMode := string(*replica.PromoteMode) + destination.PromoteMode = &promoteMode + } else { + destination.PromoteMode = nil + } + + // PromoteOption + if replica.PromoteOption != nil { + promoteOption := string(*replica.PromoteOption) + destination.PromoteOption = &promoteOption + } else { + destination.PromoteOption = nil + } + + // ReplicationState + if replica.ReplicationState != nil { + replicationState := string(*replica.ReplicationState) + destination.ReplicationState = &replicationState + } else { + destination.ReplicationState = nil + } + + // Role + if replica.Role != nil { + role := string(*replica.Role) + destination.Role = &role + } else { + destination.Role = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Used to indicate role of the server in replication set. +// +kubebuilder:validation:Enum={"AsyncReplica","GeoAsyncReplica","None","Primary"} +type ReplicationRole string + +const ( + ReplicationRole_AsyncReplica = ReplicationRole("AsyncReplica") + ReplicationRole_GeoAsyncReplica = ReplicationRole("GeoAsyncReplica") + ReplicationRole_None = ReplicationRole("None") + ReplicationRole_Primary = ReplicationRole("Primary") +) + +// Used to indicate role of the server in replication set. +type ReplicationRole_STATUS string + +const ( + ReplicationRole_STATUS_AsyncReplica = ReplicationRole_STATUS("AsyncReplica") + ReplicationRole_STATUS_GeoAsyncReplica = ReplicationRole_STATUS("GeoAsyncReplica") + ReplicationRole_STATUS_None = ReplicationRole_STATUS("None") + ReplicationRole_STATUS_Primary = ReplicationRole_STATUS("Primary") +) + +// +kubebuilder:validation:Enum={"Create","Default","GeoRestore","PointInTimeRestore","Replica","ReviveDropped","Update"} +type ServerProperties_CreateMode string + +const ( + ServerProperties_CreateMode_Create = ServerProperties_CreateMode("Create") + ServerProperties_CreateMode_Default = ServerProperties_CreateMode("Default") + ServerProperties_CreateMode_GeoRestore = ServerProperties_CreateMode("GeoRestore") + ServerProperties_CreateMode_PointInTimeRestore = ServerProperties_CreateMode("PointInTimeRestore") + ServerProperties_CreateMode_Replica = ServerProperties_CreateMode("Replica") + ServerProperties_CreateMode_ReviveDropped = ServerProperties_CreateMode("ReviveDropped") + ServerProperties_CreateMode_Update = ServerProperties_CreateMode("Update") +) + +type ServerProperties_CreateMode_STATUS string + +const ( + ServerProperties_CreateMode_STATUS_Create = ServerProperties_CreateMode_STATUS("Create") + ServerProperties_CreateMode_STATUS_Default = ServerProperties_CreateMode_STATUS("Default") + ServerProperties_CreateMode_STATUS_GeoRestore = ServerProperties_CreateMode_STATUS("GeoRestore") + ServerProperties_CreateMode_STATUS_PointInTimeRestore = ServerProperties_CreateMode_STATUS("PointInTimeRestore") + ServerProperties_CreateMode_STATUS_Replica = ServerProperties_CreateMode_STATUS("Replica") + ServerProperties_CreateMode_STATUS_ReviveDropped = ServerProperties_CreateMode_STATUS("ReviveDropped") + ServerProperties_CreateMode_STATUS_Update = ServerProperties_CreateMode_STATUS("Update") +) + +type ServerProperties_State_STATUS string + +const ( + ServerProperties_State_STATUS_Disabled = ServerProperties_State_STATUS("Disabled") + ServerProperties_State_STATUS_Dropping = ServerProperties_State_STATUS("Dropping") + ServerProperties_State_STATUS_Ready = ServerProperties_State_STATUS("Ready") + ServerProperties_State_STATUS_Starting = ServerProperties_State_STATUS("Starting") + ServerProperties_State_STATUS_Stopped = ServerProperties_State_STATUS("Stopped") + ServerProperties_State_STATUS_Stopping = ServerProperties_State_STATUS("Stopping") + ServerProperties_State_STATUS_Updating = ServerProperties_State_STATUS("Updating") +) + +// The version of a server. +// +kubebuilder:validation:Enum={"11","12","13","14","15","16"} +type ServerVersion string + +const ( + ServerVersion_11 = ServerVersion("11") + ServerVersion_12 = ServerVersion("12") + ServerVersion_13 = ServerVersion("13") + ServerVersion_14 = ServerVersion("14") + ServerVersion_15 = ServerVersion("15") + ServerVersion_16 = ServerVersion("16") +) + +// The version of a server. +type ServerVersion_STATUS string + +const ( + ServerVersion_STATUS_11 = ServerVersion_STATUS("11") + ServerVersion_STATUS_12 = ServerVersion_STATUS("12") + ServerVersion_STATUS_13 = ServerVersion_STATUS("13") + ServerVersion_STATUS_14 = ServerVersion_STATUS("14") + ServerVersion_STATUS_15 = ServerVersion_STATUS("15") + ServerVersion_STATUS_16 = ServerVersion_STATUS("16") +) + +// Sku information related properties of a server. +type Sku struct { + // +kubebuilder:validation:Required + // Name: The name of the sku, typically, tier + family + cores, e.g. Standard_D4s_v3. + Name *string `json:"name,omitempty"` + + // +kubebuilder:validation:Required + // Tier: The tier of the particular SKU, e.g. Burstable. + Tier *Sku_Tier `json:"tier,omitempty"` +} + +var _ genruntime.ARMTransformer = &Sku{} + +// ConvertToARM converts from a Kubernetes CRD object to an ARM object +func (sku *Sku) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) { + if sku == nil { + return nil, nil + } + result := &Sku_ARM{} + + // Set property "Name": + if sku.Name != nil { + name := *sku.Name + result.Name = &name + } + + // Set property "Tier": + if sku.Tier != nil { + tier := *sku.Tier + result.Tier = &tier + } + return result, nil +} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (sku *Sku) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &Sku_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (sku *Sku) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(Sku_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected Sku_ARM, got %T", armInput) + } + + // Set property "Name": + if typedInput.Name != nil { + name := *typedInput.Name + sku.Name = &name + } + + // Set property "Tier": + if typedInput.Tier != nil { + tier := *typedInput.Tier + sku.Tier = &tier + } + + // No error + return nil +} + +// AssignProperties_From_Sku populates our Sku from the provided source Sku +func (sku *Sku) AssignProperties_From_Sku(source *v20230601ps.Sku) error { + + // Name + sku.Name = genruntime.ClonePointerToString(source.Name) + + // Tier + if source.Tier != nil { + tier := Sku_Tier(*source.Tier) + sku.Tier = &tier + } else { + sku.Tier = nil + } + + // No error + return nil +} + +// AssignProperties_To_Sku populates the provided destination Sku from our Sku +func (sku *Sku) AssignProperties_To_Sku(destination *v20230601ps.Sku) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // Name + destination.Name = genruntime.ClonePointerToString(sku.Name) + + // Tier + if sku.Tier != nil { + tier := string(*sku.Tier) + destination.Tier = &tier + } else { + destination.Tier = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Sku information related properties of a server. +type Sku_STATUS struct { + // Name: The name of the sku, typically, tier + family + cores, e.g. Standard_D4s_v3. + Name *string `json:"name,omitempty"` + + // Tier: The tier of the particular SKU, e.g. Burstable. + Tier *Sku_Tier_STATUS `json:"tier,omitempty"` +} + +var _ genruntime.FromARMConverter = &Sku_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (sku *Sku_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &Sku_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (sku *Sku_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(Sku_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected Sku_STATUS_ARM, got %T", armInput) + } + + // Set property "Name": + if typedInput.Name != nil { + name := *typedInput.Name + sku.Name = &name + } + + // Set property "Tier": + if typedInput.Tier != nil { + tier := *typedInput.Tier + sku.Tier = &tier + } + + // No error + return nil +} + +// AssignProperties_From_Sku_STATUS populates our Sku_STATUS from the provided source Sku_STATUS +func (sku *Sku_STATUS) AssignProperties_From_Sku_STATUS(source *v20230601ps.Sku_STATUS) error { + + // Name + sku.Name = genruntime.ClonePointerToString(source.Name) + + // Tier + if source.Tier != nil { + tier := Sku_Tier_STATUS(*source.Tier) + sku.Tier = &tier + } else { + sku.Tier = nil + } + + // No error + return nil +} + +// AssignProperties_To_Sku_STATUS populates the provided destination Sku_STATUS from our Sku_STATUS +func (sku *Sku_STATUS) AssignProperties_To_Sku_STATUS(destination *v20230601ps.Sku_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // Name + destination.Name = genruntime.ClonePointerToString(sku.Name) + + // Tier + if sku.Tier != nil { + tier := string(*sku.Tier) + destination.Tier = &tier + } else { + destination.Tier = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// Storage properties of a server +type Storage struct { + // AutoGrow: Flag to enable / disable Storage Auto grow for flexible server. + AutoGrow *Storage_AutoGrow `json:"autoGrow,omitempty"` + + // Iops: Storage tier IOPS quantity. This property is required to be set for storage Type PremiumV2_LRS + Iops *int `json:"iops,omitempty"` + + // StorageSizeGB: Max storage allowed for a server. + StorageSizeGB *int `json:"storageSizeGB,omitempty"` + + // Throughput: Storage throughput for the server. This is required to be set for storage Type PremiumV2_LRS + Throughput *int `json:"throughput,omitempty"` + + // Tier: Name of storage tier for IOPS. + Tier *Storage_Tier `json:"tier,omitempty"` + + // Type: Storage type for the server. Allowed values are Premium_LRS and PremiumV2_LRS, and default is Premium_LRS if not + // specified + Type *Storage_Type `json:"type,omitempty"` +} + +var _ genruntime.ARMTransformer = &Storage{} + +// ConvertToARM converts from a Kubernetes CRD object to an ARM object +func (storage *Storage) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) { + if storage == nil { + return nil, nil + } + result := &Storage_ARM{} + + // Set property "AutoGrow": + if storage.AutoGrow != nil { + autoGrow := *storage.AutoGrow + result.AutoGrow = &autoGrow + } + + // Set property "Iops": + if storage.Iops != nil { + iops := *storage.Iops + result.Iops = &iops + } + + // Set property "StorageSizeGB": + if storage.StorageSizeGB != nil { + storageSizeGB := *storage.StorageSizeGB + result.StorageSizeGB = &storageSizeGB + } + + // Set property "Throughput": + if storage.Throughput != nil { + throughput := *storage.Throughput + result.Throughput = &throughput + } + + // Set property "Tier": + if storage.Tier != nil { + tier := *storage.Tier + result.Tier = &tier + } + + // Set property "Type": + if storage.Type != nil { + typeVar := *storage.Type + result.Type = &typeVar + } + return result, nil +} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (storage *Storage) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &Storage_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (storage *Storage) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(Storage_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected Storage_ARM, got %T", armInput) + } + + // Set property "AutoGrow": + if typedInput.AutoGrow != nil { + autoGrow := *typedInput.AutoGrow + storage.AutoGrow = &autoGrow + } + + // Set property "Iops": + if typedInput.Iops != nil { + iops := *typedInput.Iops + storage.Iops = &iops + } + + // Set property "StorageSizeGB": + if typedInput.StorageSizeGB != nil { + storageSizeGB := *typedInput.StorageSizeGB + storage.StorageSizeGB = &storageSizeGB + } + + // Set property "Throughput": + if typedInput.Throughput != nil { + throughput := *typedInput.Throughput + storage.Throughput = &throughput + } + + // Set property "Tier": + if typedInput.Tier != nil { + tier := *typedInput.Tier + storage.Tier = &tier + } + + // Set property "Type": + if typedInput.Type != nil { + typeVar := *typedInput.Type + storage.Type = &typeVar + } + + // No error + return nil +} + +// AssignProperties_From_Storage populates our Storage from the provided source Storage +func (storage *Storage) AssignProperties_From_Storage(source *v20230601ps.Storage) error { + + // AutoGrow + if source.AutoGrow != nil { + autoGrow := Storage_AutoGrow(*source.AutoGrow) + storage.AutoGrow = &autoGrow + } else { + storage.AutoGrow = nil + } + + // Iops + storage.Iops = genruntime.ClonePointerToInt(source.Iops) + + // StorageSizeGB + storage.StorageSizeGB = genruntime.ClonePointerToInt(source.StorageSizeGB) + + // Throughput + storage.Throughput = genruntime.ClonePointerToInt(source.Throughput) + + // Tier + if source.Tier != nil { + tier := Storage_Tier(*source.Tier) + storage.Tier = &tier + } else { + storage.Tier = nil + } + + // Type + if source.Type != nil { + typeVar := Storage_Type(*source.Type) + storage.Type = &typeVar + } else { + storage.Type = nil + } + + // No error + return nil +} + +// AssignProperties_To_Storage populates the provided destination Storage from our Storage +func (storage *Storage) AssignProperties_To_Storage(destination *v20230601ps.Storage) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // AutoGrow + if storage.AutoGrow != nil { + autoGrow := string(*storage.AutoGrow) + destination.AutoGrow = &autoGrow + } else { + destination.AutoGrow = nil + } + + // Iops + destination.Iops = genruntime.ClonePointerToInt(storage.Iops) + + // StorageSizeGB + destination.StorageSizeGB = genruntime.ClonePointerToInt(storage.StorageSizeGB) + + // Throughput + destination.Throughput = genruntime.ClonePointerToInt(storage.Throughput) + + // Tier + if storage.Tier != nil { + tier := string(*storage.Tier) + destination.Tier = &tier + } else { + destination.Tier = nil + } + + // Type + if storage.Type != nil { + typeVar := string(*storage.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 +} + +// Storage properties of a server +type Storage_STATUS struct { + // AutoGrow: Flag to enable / disable Storage Auto grow for flexible server. + AutoGrow *Storage_AutoGrow_STATUS `json:"autoGrow,omitempty"` + + // Iops: Storage tier IOPS quantity. This property is required to be set for storage Type PremiumV2_LRS + Iops *int `json:"iops,omitempty"` + + // StorageSizeGB: Max storage allowed for a server. + StorageSizeGB *int `json:"storageSizeGB,omitempty"` + + // Throughput: Storage throughput for the server. This is required to be set for storage Type PremiumV2_LRS + Throughput *int `json:"throughput,omitempty"` + + // Tier: Name of storage tier for IOPS. + Tier *Storage_Tier_STATUS `json:"tier,omitempty"` + + // Type: Storage type for the server. Allowed values are Premium_LRS and PremiumV2_LRS, and default is Premium_LRS if not + // specified + Type *Storage_Type_STATUS `json:"type,omitempty"` +} + +var _ genruntime.FromARMConverter = &Storage_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (storage *Storage_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &Storage_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (storage *Storage_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(Storage_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected Storage_STATUS_ARM, got %T", armInput) + } + + // Set property "AutoGrow": + if typedInput.AutoGrow != nil { + autoGrow := *typedInput.AutoGrow + storage.AutoGrow = &autoGrow + } + + // Set property "Iops": + if typedInput.Iops != nil { + iops := *typedInput.Iops + storage.Iops = &iops + } + + // Set property "StorageSizeGB": + if typedInput.StorageSizeGB != nil { + storageSizeGB := *typedInput.StorageSizeGB + storage.StorageSizeGB = &storageSizeGB + } + + // Set property "Throughput": + if typedInput.Throughput != nil { + throughput := *typedInput.Throughput + storage.Throughput = &throughput + } + + // Set property "Tier": + if typedInput.Tier != nil { + tier := *typedInput.Tier + storage.Tier = &tier + } + + // Set property "Type": + if typedInput.Type != nil { + typeVar := *typedInput.Type + storage.Type = &typeVar + } + + // No error + return nil +} + +// AssignProperties_From_Storage_STATUS populates our Storage_STATUS from the provided source Storage_STATUS +func (storage *Storage_STATUS) AssignProperties_From_Storage_STATUS(source *v20230601ps.Storage_STATUS) error { + + // AutoGrow + if source.AutoGrow != nil { + autoGrow := Storage_AutoGrow_STATUS(*source.AutoGrow) + storage.AutoGrow = &autoGrow + } else { + storage.AutoGrow = nil + } + + // Iops + storage.Iops = genruntime.ClonePointerToInt(source.Iops) + + // StorageSizeGB + storage.StorageSizeGB = genruntime.ClonePointerToInt(source.StorageSizeGB) + + // Throughput + storage.Throughput = genruntime.ClonePointerToInt(source.Throughput) + + // Tier + if source.Tier != nil { + tier := Storage_Tier_STATUS(*source.Tier) + storage.Tier = &tier + } else { + storage.Tier = nil + } + + // Type + if source.Type != nil { + typeVar := Storage_Type_STATUS(*source.Type) + storage.Type = &typeVar + } else { + storage.Type = nil + } + + // No error + return nil +} + +// AssignProperties_To_Storage_STATUS populates the provided destination Storage_STATUS from our Storage_STATUS +func (storage *Storage_STATUS) AssignProperties_To_Storage_STATUS(destination *v20230601ps.Storage_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // AutoGrow + if storage.AutoGrow != nil { + autoGrow := string(*storage.AutoGrow) + destination.AutoGrow = &autoGrow + } else { + destination.AutoGrow = nil + } + + // Iops + destination.Iops = genruntime.ClonePointerToInt(storage.Iops) + + // StorageSizeGB + destination.StorageSizeGB = genruntime.ClonePointerToInt(storage.StorageSizeGB) + + // Throughput + destination.Throughput = genruntime.ClonePointerToInt(storage.Throughput) + + // Tier + if storage.Tier != nil { + tier := string(*storage.Tier) + destination.Tier = &tier + } else { + destination.Tier = nil + } + + // Type + if storage.Type != nil { + typeVar := string(*storage.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 +} + +// Metadata pertaining to creation and last modification of the resource. +type SystemData_STATUS struct { + // CreatedAt: The timestamp of resource creation (UTC). + CreatedAt *string `json:"createdAt,omitempty"` + + // CreatedBy: The identity that created the resource. + CreatedBy *string `json:"createdBy,omitempty"` + + // CreatedByType: The type of identity that created the resource. + CreatedByType *SystemData_CreatedByType_STATUS `json:"createdByType,omitempty"` + + // LastModifiedAt: The timestamp of resource last modification (UTC) + LastModifiedAt *string `json:"lastModifiedAt,omitempty"` + + // LastModifiedBy: The identity that last modified the resource. + LastModifiedBy *string `json:"lastModifiedBy,omitempty"` + + // LastModifiedByType: The type of identity that last modified the resource. + LastModifiedByType *SystemData_LastModifiedByType_STATUS `json:"lastModifiedByType,omitempty"` +} + +var _ genruntime.FromARMConverter = &SystemData_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (data *SystemData_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &SystemData_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (data *SystemData_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(SystemData_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected SystemData_STATUS_ARM, got %T", armInput) + } + + // Set property "CreatedAt": + if typedInput.CreatedAt != nil { + createdAt := *typedInput.CreatedAt + data.CreatedAt = &createdAt + } + + // Set property "CreatedBy": + if typedInput.CreatedBy != nil { + createdBy := *typedInput.CreatedBy + data.CreatedBy = &createdBy + } + + // Set property "CreatedByType": + if typedInput.CreatedByType != nil { + createdByType := *typedInput.CreatedByType + data.CreatedByType = &createdByType + } + + // Set property "LastModifiedAt": + if typedInput.LastModifiedAt != nil { + lastModifiedAt := *typedInput.LastModifiedAt + data.LastModifiedAt = &lastModifiedAt + } + + // Set property "LastModifiedBy": + if typedInput.LastModifiedBy != nil { + lastModifiedBy := *typedInput.LastModifiedBy + data.LastModifiedBy = &lastModifiedBy + } + + // Set property "LastModifiedByType": + if typedInput.LastModifiedByType != nil { + lastModifiedByType := *typedInput.LastModifiedByType + data.LastModifiedByType = &lastModifiedByType + } + + // No error + return nil +} + +// AssignProperties_From_SystemData_STATUS populates our SystemData_STATUS from the provided source SystemData_STATUS +func (data *SystemData_STATUS) AssignProperties_From_SystemData_STATUS(source *v20230601ps.SystemData_STATUS) error { + + // CreatedAt + data.CreatedAt = genruntime.ClonePointerToString(source.CreatedAt) + + // CreatedBy + data.CreatedBy = genruntime.ClonePointerToString(source.CreatedBy) + + // CreatedByType + if source.CreatedByType != nil { + createdByType := SystemData_CreatedByType_STATUS(*source.CreatedByType) + data.CreatedByType = &createdByType + } else { + data.CreatedByType = nil + } + + // LastModifiedAt + data.LastModifiedAt = genruntime.ClonePointerToString(source.LastModifiedAt) + + // LastModifiedBy + data.LastModifiedBy = genruntime.ClonePointerToString(source.LastModifiedBy) + + // LastModifiedByType + if source.LastModifiedByType != nil { + lastModifiedByType := SystemData_LastModifiedByType_STATUS(*source.LastModifiedByType) + data.LastModifiedByType = &lastModifiedByType + } 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 *v20230601ps.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 +} + +// Information describing the identities associated with this application. +type UserAssignedIdentity struct { + // +kubebuilder:validation:Required + // Type: the types of identities associated with this resource; currently restricted to 'None and UserAssigned' + Type *UserAssignedIdentity_Type `json:"type,omitempty"` + + // UserAssignedIdentities: represents user assigned identities map. + UserAssignedIdentities []UserAssignedIdentityDetails `json:"userAssignedIdentities,omitempty"` +} + +var _ genruntime.ARMTransformer = &UserAssignedIdentity{} + +// ConvertToARM converts from a Kubernetes CRD object to an ARM object +func (identity *UserAssignedIdentity) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) { + if identity == nil { + return nil, nil + } + result := &UserAssignedIdentity_ARM{} + + // Set property "Type": + if identity.Type != nil { + typeVar := *identity.Type + result.Type = &typeVar + } + + // Set property "UserAssignedIdentities": + result.UserAssignedIdentities = make(map[string]UserAssignedIdentityDetails_ARM, 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] = UserAssignedIdentityDetails_ARM{} + } + return result, nil +} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (identity *UserAssignedIdentity) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &UserAssignedIdentity_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (identity *UserAssignedIdentity) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(UserAssignedIdentity_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected UserAssignedIdentity_ARM, got %T", armInput) + } + + // Set property "Type": + if typedInput.Type != nil { + typeVar := *typedInput.Type + identity.Type = &typeVar + } + + // no assignment for property "UserAssignedIdentities" + + // No error + return nil +} + +// AssignProperties_From_UserAssignedIdentity populates our UserAssignedIdentity from the provided source UserAssignedIdentity +func (identity *UserAssignedIdentity) AssignProperties_From_UserAssignedIdentity(source *v20230601ps.UserAssignedIdentity) error { + + // Type + if source.Type != nil { + typeVar := UserAssignedIdentity_Type(*source.Type) + identity.Type = &typeVar + } 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 errors.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_UserAssignedIdentity populates the provided destination UserAssignedIdentity from our UserAssignedIdentity +func (identity *UserAssignedIdentity) AssignProperties_To_UserAssignedIdentity(destination *v20230601ps.UserAssignedIdentity) 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([]v20230601ps.UserAssignedIdentityDetails, len(identity.UserAssignedIdentities)) + for userAssignedIdentityIndex, userAssignedIdentityItem := range identity.UserAssignedIdentities { + // Shadow the loop variable to avoid aliasing + userAssignedIdentityItem := userAssignedIdentityItem + var userAssignedIdentity v20230601ps.UserAssignedIdentityDetails + err := userAssignedIdentityItem.AssignProperties_To_UserAssignedIdentityDetails(&userAssignedIdentity) + if err != nil { + return errors.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 +} + +// Information describing the identities associated with this application. +type UserAssignedIdentity_STATUS struct { + // TenantId: Tenant id of the server. + TenantId *string `json:"tenantId,omitempty"` + + // Type: the types of identities associated with this resource; currently restricted to 'None and UserAssigned' + Type *UserAssignedIdentity_Type_STATUS `json:"type,omitempty"` + + // UserAssignedIdentities: represents user assigned identities map. + UserAssignedIdentities map[string]UserIdentity_STATUS `json:"userAssignedIdentities,omitempty"` +} + +var _ genruntime.FromARMConverter = &UserAssignedIdentity_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (identity *UserAssignedIdentity_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &UserAssignedIdentity_STATUS_ARM{} +} + +// 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.(UserAssignedIdentity_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected UserAssignedIdentity_STATUS_ARM, got %T", armInput) + } + + // Set property "TenantId": + if typedInput.TenantId != nil { + tenantId := *typedInput.TenantId + identity.TenantId = &tenantId + } + + // Set property "Type": + if typedInput.Type != nil { + typeVar := *typedInput.Type + identity.Type = &typeVar + } + + // Set property "UserAssignedIdentities": + if typedInput.UserAssignedIdentities != nil { + identity.UserAssignedIdentities = make(map[string]UserIdentity_STATUS, len(typedInput.UserAssignedIdentities)) + for key, value := range typedInput.UserAssignedIdentities { + var value1 UserIdentity_STATUS + err := value1.PopulateFromARM(owner, value) + if err != nil { + return err + } + identity.UserAssignedIdentities[key] = value1 + } + } + + // 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 *v20230601ps.UserAssignedIdentity_STATUS) error { + + // TenantId + identity.TenantId = genruntime.ClonePointerToString(source.TenantId) + + // Type + if source.Type != nil { + typeVar := UserAssignedIdentity_Type_STATUS(*source.Type) + identity.Type = &typeVar + } else { + identity.Type = nil + } + + // UserAssignedIdentities + if source.UserAssignedIdentities != nil { + userAssignedIdentityMap := make(map[string]UserIdentity_STATUS, len(source.UserAssignedIdentities)) + for userAssignedIdentityKey, userAssignedIdentityValue := range source.UserAssignedIdentities { + // Shadow the loop variable to avoid aliasing + userAssignedIdentityValue := userAssignedIdentityValue + var userAssignedIdentity UserIdentity_STATUS + err := userAssignedIdentity.AssignProperties_From_UserIdentity_STATUS(&userAssignedIdentityValue) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_UserIdentity_STATUS() to populate field UserAssignedIdentities") + } + userAssignedIdentityMap[userAssignedIdentityKey] = userAssignedIdentity + } + identity.UserAssignedIdentities = userAssignedIdentityMap + } else { + identity.UserAssignedIdentities = nil + } + + // 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 *v20230601ps.UserAssignedIdentity_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // 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]v20230601ps.UserIdentity_STATUS, len(identity.UserAssignedIdentities)) + for userAssignedIdentityKey, userAssignedIdentityValue := range identity.UserAssignedIdentities { + // Shadow the loop variable to avoid aliasing + userAssignedIdentityValue := userAssignedIdentityValue + var userAssignedIdentity v20230601ps.UserIdentity_STATUS + err := userAssignedIdentityValue.AssignProperties_To_UserIdentity_STATUS(&userAssignedIdentity) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_UserIdentity_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 +} + +// +kubebuilder:validation:Enum={"Disabled","Enabled"} +type AuthConfig_ActiveDirectoryAuth string + +const ( + AuthConfig_ActiveDirectoryAuth_Disabled = AuthConfig_ActiveDirectoryAuth("Disabled") + AuthConfig_ActiveDirectoryAuth_Enabled = AuthConfig_ActiveDirectoryAuth("Enabled") +) + +type AuthConfig_ActiveDirectoryAuth_STATUS string + +const ( + AuthConfig_ActiveDirectoryAuth_STATUS_Disabled = AuthConfig_ActiveDirectoryAuth_STATUS("Disabled") + AuthConfig_ActiveDirectoryAuth_STATUS_Enabled = AuthConfig_ActiveDirectoryAuth_STATUS("Enabled") +) + +// +kubebuilder:validation:Enum={"Disabled","Enabled"} +type AuthConfig_PasswordAuth string + +const ( + AuthConfig_PasswordAuth_Disabled = AuthConfig_PasswordAuth("Disabled") + AuthConfig_PasswordAuth_Enabled = AuthConfig_PasswordAuth("Enabled") +) + +type AuthConfig_PasswordAuth_STATUS string + +const ( + AuthConfig_PasswordAuth_STATUS_Disabled = AuthConfig_PasswordAuth_STATUS("Disabled") + AuthConfig_PasswordAuth_STATUS_Enabled = AuthConfig_PasswordAuth_STATUS("Enabled") +) + +// +kubebuilder:validation:Enum={"Disabled","Enabled"} +type Backup_GeoRedundantBackup string + +const ( + Backup_GeoRedundantBackup_Disabled = Backup_GeoRedundantBackup("Disabled") + Backup_GeoRedundantBackup_Enabled = Backup_GeoRedundantBackup("Enabled") +) + +type Backup_GeoRedundantBackup_STATUS string + +const ( + Backup_GeoRedundantBackup_STATUS_Disabled = Backup_GeoRedundantBackup_STATUS("Disabled") + Backup_GeoRedundantBackup_STATUS_Enabled = Backup_GeoRedundantBackup_STATUS("Enabled") +) + +// +kubebuilder:validation:Enum={"Invalid","Valid"} +type DataEncryption_GeoBackupEncryptionKeyStatus string + +const ( + DataEncryption_GeoBackupEncryptionKeyStatus_Invalid = DataEncryption_GeoBackupEncryptionKeyStatus("Invalid") + DataEncryption_GeoBackupEncryptionKeyStatus_Valid = DataEncryption_GeoBackupEncryptionKeyStatus("Valid") +) + +type DataEncryption_GeoBackupEncryptionKeyStatus_STATUS string + +const ( + DataEncryption_GeoBackupEncryptionKeyStatus_STATUS_Invalid = DataEncryption_GeoBackupEncryptionKeyStatus_STATUS("Invalid") + DataEncryption_GeoBackupEncryptionKeyStatus_STATUS_Valid = DataEncryption_GeoBackupEncryptionKeyStatus_STATUS("Valid") +) + +// +kubebuilder:validation:Enum={"Invalid","Valid"} +type DataEncryption_PrimaryEncryptionKeyStatus string + +const ( + DataEncryption_PrimaryEncryptionKeyStatus_Invalid = DataEncryption_PrimaryEncryptionKeyStatus("Invalid") + DataEncryption_PrimaryEncryptionKeyStatus_Valid = DataEncryption_PrimaryEncryptionKeyStatus("Valid") +) + +type DataEncryption_PrimaryEncryptionKeyStatus_STATUS string + +const ( + DataEncryption_PrimaryEncryptionKeyStatus_STATUS_Invalid = DataEncryption_PrimaryEncryptionKeyStatus_STATUS("Invalid") + DataEncryption_PrimaryEncryptionKeyStatus_STATUS_Valid = DataEncryption_PrimaryEncryptionKeyStatus_STATUS("Valid") +) + +// +kubebuilder:validation:Enum={"AzureKeyVault","SystemManaged"} +type DataEncryption_Type string + +const ( + DataEncryption_Type_AzureKeyVault = DataEncryption_Type("AzureKeyVault") + DataEncryption_Type_SystemManaged = DataEncryption_Type("SystemManaged") +) + +type DataEncryption_Type_STATUS string + +const ( + DataEncryption_Type_STATUS_AzureKeyVault = DataEncryption_Type_STATUS("AzureKeyVault") + DataEncryption_Type_STATUS_SystemManaged = DataEncryption_Type_STATUS("SystemManaged") +) + +type FlexibleServerOperatorConfigMaps struct { + // FullyQualifiedDomainName: indicates where the FullyQualifiedDomainName config map should be placed. If omitted, no + // config map will be created. + FullyQualifiedDomainName *genruntime.ConfigMapDestination `json:"fullyQualifiedDomainName,omitempty"` +} + +// AssignProperties_From_FlexibleServerOperatorConfigMaps populates our FlexibleServerOperatorConfigMaps from the provided source FlexibleServerOperatorConfigMaps +func (maps *FlexibleServerOperatorConfigMaps) AssignProperties_From_FlexibleServerOperatorConfigMaps(source *v20230601ps.FlexibleServerOperatorConfigMaps) error { + + // FullyQualifiedDomainName + if source.FullyQualifiedDomainName != nil { + fullyQualifiedDomainName := source.FullyQualifiedDomainName.Copy() + maps.FullyQualifiedDomainName = &fullyQualifiedDomainName + } else { + maps.FullyQualifiedDomainName = nil + } + + // No error + return nil +} + +// AssignProperties_To_FlexibleServerOperatorConfigMaps populates the provided destination FlexibleServerOperatorConfigMaps from our FlexibleServerOperatorConfigMaps +func (maps *FlexibleServerOperatorConfigMaps) AssignProperties_To_FlexibleServerOperatorConfigMaps(destination *v20230601ps.FlexibleServerOperatorConfigMaps) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // FullyQualifiedDomainName + if maps.FullyQualifiedDomainName != nil { + fullyQualifiedDomainName := maps.FullyQualifiedDomainName.Copy() + destination.FullyQualifiedDomainName = &fullyQualifiedDomainName + } else { + destination.FullyQualifiedDomainName = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +type FlexibleServerOperatorSecrets struct { + // FullyQualifiedDomainName: indicates where the FullyQualifiedDomainName secret should be placed. If omitted, the secret + // will not be retrieved from Azure. + FullyQualifiedDomainName *genruntime.SecretDestination `json:"fullyQualifiedDomainName,omitempty"` +} + +// AssignProperties_From_FlexibleServerOperatorSecrets populates our FlexibleServerOperatorSecrets from the provided source FlexibleServerOperatorSecrets +func (secrets *FlexibleServerOperatorSecrets) AssignProperties_From_FlexibleServerOperatorSecrets(source *v20230601ps.FlexibleServerOperatorSecrets) error { + + // FullyQualifiedDomainName + if source.FullyQualifiedDomainName != nil { + fullyQualifiedDomainName := source.FullyQualifiedDomainName.Copy() + secrets.FullyQualifiedDomainName = &fullyQualifiedDomainName + } else { + secrets.FullyQualifiedDomainName = nil + } + + // No error + return nil +} + +// AssignProperties_To_FlexibleServerOperatorSecrets populates the provided destination FlexibleServerOperatorSecrets from our FlexibleServerOperatorSecrets +func (secrets *FlexibleServerOperatorSecrets) AssignProperties_To_FlexibleServerOperatorSecrets(destination *v20230601ps.FlexibleServerOperatorSecrets) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // FullyQualifiedDomainName + if secrets.FullyQualifiedDomainName != nil { + fullyQualifiedDomainName := secrets.FullyQualifiedDomainName.Copy() + destination.FullyQualifiedDomainName = &fullyQualifiedDomainName + } else { + destination.FullyQualifiedDomainName = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// +kubebuilder:validation:Enum={"Disabled","SameZone","ZoneRedundant"} +type HighAvailability_Mode string + +const ( + HighAvailability_Mode_Disabled = HighAvailability_Mode("Disabled") + HighAvailability_Mode_SameZone = HighAvailability_Mode("SameZone") + HighAvailability_Mode_ZoneRedundant = HighAvailability_Mode("ZoneRedundant") +) + +type HighAvailability_Mode_STATUS string + +const ( + HighAvailability_Mode_STATUS_Disabled = HighAvailability_Mode_STATUS("Disabled") + HighAvailability_Mode_STATUS_SameZone = HighAvailability_Mode_STATUS("SameZone") + HighAvailability_Mode_STATUS_ZoneRedundant = HighAvailability_Mode_STATUS("ZoneRedundant") +) + +type HighAvailability_State_STATUS string + +const ( + HighAvailability_State_STATUS_CreatingStandby = HighAvailability_State_STATUS("CreatingStandby") + HighAvailability_State_STATUS_FailingOver = HighAvailability_State_STATUS("FailingOver") + HighAvailability_State_STATUS_Healthy = HighAvailability_State_STATUS("Healthy") + HighAvailability_State_STATUS_NotEnabled = HighAvailability_State_STATUS("NotEnabled") + HighAvailability_State_STATUS_RemovingStandby = HighAvailability_State_STATUS("RemovingStandby") + HighAvailability_State_STATUS_ReplicatingData = HighAvailability_State_STATUS("ReplicatingData") +) + +// +kubebuilder:validation:Enum={"Disabled","Enabled"} +type Network_PublicNetworkAccess string + +const ( + Network_PublicNetworkAccess_Disabled = Network_PublicNetworkAccess("Disabled") + Network_PublicNetworkAccess_Enabled = Network_PublicNetworkAccess("Enabled") +) + +type Network_PublicNetworkAccess_STATUS string + +const ( + Network_PublicNetworkAccess_STATUS_Disabled = Network_PublicNetworkAccess_STATUS("Disabled") + Network_PublicNetworkAccess_STATUS_Enabled = Network_PublicNetworkAccess_STATUS("Enabled") +) + +// +kubebuilder:validation:Enum={"standalone","switchover"} +type Replica_PromoteMode string + +const ( + Replica_PromoteMode_Standalone = Replica_PromoteMode("standalone") + Replica_PromoteMode_Switchover = Replica_PromoteMode("switchover") +) + +type Replica_PromoteMode_STATUS string + +const ( + Replica_PromoteMode_STATUS_Standalone = Replica_PromoteMode_STATUS("standalone") + Replica_PromoteMode_STATUS_Switchover = Replica_PromoteMode_STATUS("switchover") +) + +// +kubebuilder:validation:Enum={"forced","planned"} +type Replica_PromoteOption string + +const ( + Replica_PromoteOption_Forced = Replica_PromoteOption("forced") + Replica_PromoteOption_Planned = Replica_PromoteOption("planned") +) + +type Replica_PromoteOption_STATUS string + +const ( + Replica_PromoteOption_STATUS_Forced = Replica_PromoteOption_STATUS("forced") + Replica_PromoteOption_STATUS_Planned = Replica_PromoteOption_STATUS("planned") +) + +type Replica_ReplicationState_STATUS string + +const ( + Replica_ReplicationState_STATUS_Active = Replica_ReplicationState_STATUS("Active") + Replica_ReplicationState_STATUS_Broken = Replica_ReplicationState_STATUS("Broken") + Replica_ReplicationState_STATUS_Catchup = Replica_ReplicationState_STATUS("Catchup") + Replica_ReplicationState_STATUS_Provisioning = Replica_ReplicationState_STATUS("Provisioning") + Replica_ReplicationState_STATUS_Reconfiguring = Replica_ReplicationState_STATUS("Reconfiguring") + Replica_ReplicationState_STATUS_Updating = Replica_ReplicationState_STATUS("Updating") +) + +// +kubebuilder:validation:Enum={"Disabled","Enabled"} +type Storage_AutoGrow string + +const ( + Storage_AutoGrow_Disabled = Storage_AutoGrow("Disabled") + Storage_AutoGrow_Enabled = Storage_AutoGrow("Enabled") +) + +type Storage_AutoGrow_STATUS string + +const ( + Storage_AutoGrow_STATUS_Disabled = Storage_AutoGrow_STATUS("Disabled") + Storage_AutoGrow_STATUS_Enabled = Storage_AutoGrow_STATUS("Enabled") +) + +// +kubebuilder:validation:Enum={"P1","P10","P15","P2","P20","P3","P30","P4","P40","P50","P6","P60","P70","P80"} +type Storage_Tier string + +const ( + Storage_Tier_P1 = Storage_Tier("P1") + Storage_Tier_P10 = Storage_Tier("P10") + Storage_Tier_P15 = Storage_Tier("P15") + Storage_Tier_P2 = Storage_Tier("P2") + Storage_Tier_P20 = Storage_Tier("P20") + Storage_Tier_P3 = Storage_Tier("P3") + Storage_Tier_P30 = Storage_Tier("P30") + Storage_Tier_P4 = Storage_Tier("P4") + Storage_Tier_P40 = Storage_Tier("P40") + Storage_Tier_P50 = Storage_Tier("P50") + Storage_Tier_P6 = Storage_Tier("P6") + Storage_Tier_P60 = Storage_Tier("P60") + Storage_Tier_P70 = Storage_Tier("P70") + Storage_Tier_P80 = Storage_Tier("P80") +) + +type Storage_Tier_STATUS string + +const ( + Storage_Tier_STATUS_P1 = Storage_Tier_STATUS("P1") + Storage_Tier_STATUS_P10 = Storage_Tier_STATUS("P10") + Storage_Tier_STATUS_P15 = Storage_Tier_STATUS("P15") + Storage_Tier_STATUS_P2 = Storage_Tier_STATUS("P2") + Storage_Tier_STATUS_P20 = Storage_Tier_STATUS("P20") + Storage_Tier_STATUS_P3 = Storage_Tier_STATUS("P3") + Storage_Tier_STATUS_P30 = Storage_Tier_STATUS("P30") + Storage_Tier_STATUS_P4 = Storage_Tier_STATUS("P4") + Storage_Tier_STATUS_P40 = Storage_Tier_STATUS("P40") + Storage_Tier_STATUS_P50 = Storage_Tier_STATUS("P50") + Storage_Tier_STATUS_P6 = Storage_Tier_STATUS("P6") + Storage_Tier_STATUS_P60 = Storage_Tier_STATUS("P60") + Storage_Tier_STATUS_P70 = Storage_Tier_STATUS("P70") + Storage_Tier_STATUS_P80 = Storage_Tier_STATUS("P80") +) + +// +kubebuilder:validation:Enum={"PremiumV2_LRS","Premium_LRS"} +type Storage_Type string + +const ( + Storage_Type_PremiumV2_LRS = Storage_Type("PremiumV2_LRS") + Storage_Type_Premium_LRS = Storage_Type("Premium_LRS") +) + +type Storage_Type_STATUS string + +const ( + Storage_Type_STATUS_PremiumV2_LRS = Storage_Type_STATUS("PremiumV2_LRS") + Storage_Type_STATUS_Premium_LRS = Storage_Type_STATUS("Premium_LRS") +) + +// 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 *v20230601ps.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 *v20230601ps.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 +} + +// Describes a single user-assigned identity associated with the application. +type UserIdentity_STATUS struct { + // ClientId: the client identifier of the Service Principal which this identity represents. + ClientId *string `json:"clientId,omitempty"` + + // PrincipalId: the object identifier of the Service Principal which this identity represents. + PrincipalId *string `json:"principalId,omitempty"` +} + +var _ genruntime.FromARMConverter = &UserIdentity_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (identity *UserIdentity_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &UserIdentity_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (identity *UserIdentity_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(UserIdentity_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected UserIdentity_STATUS_ARM, 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_UserIdentity_STATUS populates our UserIdentity_STATUS from the provided source UserIdentity_STATUS +func (identity *UserIdentity_STATUS) AssignProperties_From_UserIdentity_STATUS(source *v20230601ps.UserIdentity_STATUS) error { + + // ClientId + identity.ClientId = genruntime.ClonePointerToString(source.ClientId) + + // PrincipalId + identity.PrincipalId = genruntime.ClonePointerToString(source.PrincipalId) + + // No error + return nil +} + +// AssignProperties_To_UserIdentity_STATUS populates the provided destination UserIdentity_STATUS from our UserIdentity_STATUS +func (identity *UserIdentity_STATUS) AssignProperties_To_UserIdentity_STATUS(destination *v20230601ps.UserIdentity_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 +} + +func init() { + SchemeBuilder.Register(&FlexibleServer{}, &FlexibleServerList{}) +} diff --git a/v2/api/dbforpostgresql/v1api20230601preview/flexible_server_types_gen_test.go b/v2/api/dbforpostgresql/v1api20230601preview/flexible_server_types_gen_test.go new file mode 100644 index 00000000000..ebea98e7e56 --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/flexible_server_types_gen_test.go @@ -0,0 +1,3370 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20230601preview + +import ( + "encoding/json" + v20221201s "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20221201/storage" + v20230601ps "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20230601preview/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_FlexibleServer_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 FlexibleServer to hub returns original", + prop.ForAll(RunResourceConversionTestForFlexibleServer, FlexibleServerGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunResourceConversionTestForFlexibleServer tests if a specific instance of FlexibleServer round trips to the hub storage version and back losslessly +func RunResourceConversionTestForFlexibleServer(subject FlexibleServer) string { + // Copy subject to make sure conversion doesn't modify it + copied := subject.DeepCopy() + + // Convert to our hub version + var hub v20221201s.FlexibleServer + err := copied.ConvertTo(&hub) + if err != nil { + return err.Error() + } + + // Convert from our hub version + var actual FlexibleServer + 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_FlexibleServer_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from FlexibleServer to FlexibleServer via AssignProperties_To_FlexibleServer & AssignProperties_From_FlexibleServer returns original", + prop.ForAll(RunPropertyAssignmentTestForFlexibleServer, FlexibleServerGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForFlexibleServer tests if a specific instance of FlexibleServer can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForFlexibleServer(subject FlexibleServer) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20230601ps.FlexibleServer + err := copied.AssignProperties_To_FlexibleServer(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual FlexibleServer + err = actual.AssignProperties_From_FlexibleServer(&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_FlexibleServer_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 FlexibleServer via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServer, FlexibleServerGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServer runs a test to see if a specific instance of FlexibleServer round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServer(subject FlexibleServer) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServer + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of FlexibleServer instances for property testing - lazily instantiated by FlexibleServerGenerator() +var flexibleServerGenerator gopter.Gen + +// FlexibleServerGenerator returns a generator of FlexibleServer instances for property testing. +func FlexibleServerGenerator() gopter.Gen { + if flexibleServerGenerator != nil { + return flexibleServerGenerator + } + + generators := make(map[string]gopter.Gen) + AddRelatedPropertyGeneratorsForFlexibleServer(generators) + flexibleServerGenerator = gen.Struct(reflect.TypeOf(FlexibleServer{}), generators) + + return flexibleServerGenerator +} + +// AddRelatedPropertyGeneratorsForFlexibleServer is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForFlexibleServer(gens map[string]gopter.Gen) { + gens["Spec"] = FlexibleServer_SpecGenerator() + gens["Status"] = FlexibleServer_STATUSGenerator() +} + +func Test_FlexibleServer_Spec_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from FlexibleServer_Spec to FlexibleServer_Spec via AssignProperties_To_FlexibleServer_Spec & AssignProperties_From_FlexibleServer_Spec returns original", + prop.ForAll(RunPropertyAssignmentTestForFlexibleServer_Spec, FlexibleServer_SpecGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForFlexibleServer_Spec tests if a specific instance of FlexibleServer_Spec can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForFlexibleServer_Spec(subject FlexibleServer_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 v20230601ps.FlexibleServer_Spec + err := copied.AssignProperties_To_FlexibleServer_Spec(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual FlexibleServer_Spec + err = actual.AssignProperties_From_FlexibleServer_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_FlexibleServer_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 FlexibleServer_Spec via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServer_Spec, FlexibleServer_SpecGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServer_Spec runs a test to see if a specific instance of FlexibleServer_Spec round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServer_Spec(subject FlexibleServer_Spec) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServer_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 FlexibleServer_Spec instances for property testing - lazily instantiated by +// FlexibleServer_SpecGenerator() +var flexibleServer_SpecGenerator gopter.Gen + +// FlexibleServer_SpecGenerator returns a generator of FlexibleServer_Spec instances for property testing. +// We first initialize flexibleServer_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 FlexibleServer_SpecGenerator() gopter.Gen { + if flexibleServer_SpecGenerator != nil { + return flexibleServer_SpecGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServer_Spec(generators) + flexibleServer_SpecGenerator = gen.Struct(reflect.TypeOf(FlexibleServer_Spec{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServer_Spec(generators) + AddRelatedPropertyGeneratorsForFlexibleServer_Spec(generators) + flexibleServer_SpecGenerator = gen.Struct(reflect.TypeOf(FlexibleServer_Spec{}), generators) + + return flexibleServer_SpecGenerator +} + +// AddIndependentPropertyGeneratorsForFlexibleServer_Spec is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForFlexibleServer_Spec(gens map[string]gopter.Gen) { + gens["AdministratorLogin"] = gen.PtrOf(gen.AlphaString()) + gens["AvailabilityZone"] = gen.PtrOf(gen.AlphaString()) + gens["AzureName"] = gen.AlphaString() + gens["CreateMode"] = gen.PtrOf(gen.OneConstOf( + ServerProperties_CreateMode_Create, + ServerProperties_CreateMode_Default, + ServerProperties_CreateMode_GeoRestore, + ServerProperties_CreateMode_PointInTimeRestore, + ServerProperties_CreateMode_Replica, + ServerProperties_CreateMode_ReviveDropped, + ServerProperties_CreateMode_Update)) + gens["Location"] = gen.PtrOf(gen.AlphaString()) + gens["PointInTimeUTC"] = gen.PtrOf(gen.AlphaString()) + gens["ReplicationRole"] = gen.PtrOf(gen.OneConstOf( + ReplicationRole_AsyncReplica, + ReplicationRole_GeoAsyncReplica, + ReplicationRole_None, + ReplicationRole_Primary)) + gens["Tags"] = gen.MapOf(gen.AlphaString(), gen.AlphaString()) + gens["Version"] = gen.PtrOf(gen.OneConstOf( + ServerVersion_11, + ServerVersion_12, + ServerVersion_13, + ServerVersion_14, + ServerVersion_15, + ServerVersion_16)) +} + +// AddRelatedPropertyGeneratorsForFlexibleServer_Spec is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForFlexibleServer_Spec(gens map[string]gopter.Gen) { + gens["AuthConfig"] = gen.PtrOf(AuthConfigGenerator()) + gens["Backup"] = gen.PtrOf(BackupGenerator()) + gens["DataEncryption"] = gen.PtrOf(DataEncryptionGenerator()) + gens["HighAvailability"] = gen.PtrOf(HighAvailabilityGenerator()) + gens["Identity"] = gen.PtrOf(UserAssignedIdentityGenerator()) + gens["MaintenanceWindow"] = gen.PtrOf(MaintenanceWindowGenerator()) + gens["Network"] = gen.PtrOf(NetworkGenerator()) + gens["OperatorSpec"] = gen.PtrOf(FlexibleServerOperatorSpecGenerator()) + gens["Replica"] = gen.PtrOf(ReplicaGenerator()) + gens["Sku"] = gen.PtrOf(SkuGenerator()) + gens["Storage"] = gen.PtrOf(StorageGenerator()) +} + +func Test_FlexibleServer_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from FlexibleServer_STATUS to FlexibleServer_STATUS via AssignProperties_To_FlexibleServer_STATUS & AssignProperties_From_FlexibleServer_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForFlexibleServer_STATUS, FlexibleServer_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForFlexibleServer_STATUS tests if a specific instance of FlexibleServer_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForFlexibleServer_STATUS(subject FlexibleServer_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 v20230601ps.FlexibleServer_STATUS + err := copied.AssignProperties_To_FlexibleServer_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual FlexibleServer_STATUS + err = actual.AssignProperties_From_FlexibleServer_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_FlexibleServer_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of FlexibleServer_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServer_STATUS, FlexibleServer_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServer_STATUS runs a test to see if a specific instance of FlexibleServer_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServer_STATUS(subject FlexibleServer_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServer_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of FlexibleServer_STATUS instances for property testing - lazily instantiated by +// FlexibleServer_STATUSGenerator() +var flexibleServer_STATUSGenerator gopter.Gen + +// FlexibleServer_STATUSGenerator returns a generator of FlexibleServer_STATUS instances for property testing. +// We first initialize flexibleServer_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 FlexibleServer_STATUSGenerator() gopter.Gen { + if flexibleServer_STATUSGenerator != nil { + return flexibleServer_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServer_STATUS(generators) + flexibleServer_STATUSGenerator = gen.Struct(reflect.TypeOf(FlexibleServer_STATUS{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServer_STATUS(generators) + AddRelatedPropertyGeneratorsForFlexibleServer_STATUS(generators) + flexibleServer_STATUSGenerator = gen.Struct(reflect.TypeOf(FlexibleServer_STATUS{}), generators) + + return flexibleServer_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForFlexibleServer_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForFlexibleServer_STATUS(gens map[string]gopter.Gen) { + gens["AdministratorLogin"] = gen.PtrOf(gen.AlphaString()) + gens["AvailabilityZone"] = gen.PtrOf(gen.AlphaString()) + gens["CreateMode"] = gen.PtrOf(gen.OneConstOf( + ServerProperties_CreateMode_STATUS_Create, + ServerProperties_CreateMode_STATUS_Default, + ServerProperties_CreateMode_STATUS_GeoRestore, + ServerProperties_CreateMode_STATUS_PointInTimeRestore, + ServerProperties_CreateMode_STATUS_Replica, + ServerProperties_CreateMode_STATUS_ReviveDropped, + ServerProperties_CreateMode_STATUS_Update)) + gens["FullyQualifiedDomainName"] = gen.PtrOf(gen.AlphaString()) + gens["Id"] = gen.PtrOf(gen.AlphaString()) + gens["Location"] = gen.PtrOf(gen.AlphaString()) + gens["MinorVersion"] = gen.PtrOf(gen.AlphaString()) + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["PointInTimeUTC"] = gen.PtrOf(gen.AlphaString()) + gens["ReplicaCapacity"] = gen.PtrOf(gen.Int()) + gens["ReplicationRole"] = gen.PtrOf(gen.OneConstOf( + ReplicationRole_STATUS_AsyncReplica, + ReplicationRole_STATUS_GeoAsyncReplica, + ReplicationRole_STATUS_None, + ReplicationRole_STATUS_Primary)) + gens["SourceServerResourceId"] = gen.PtrOf(gen.AlphaString()) + gens["State"] = gen.PtrOf(gen.OneConstOf( + ServerProperties_State_STATUS_Disabled, + ServerProperties_State_STATUS_Dropping, + ServerProperties_State_STATUS_Ready, + ServerProperties_State_STATUS_Starting, + ServerProperties_State_STATUS_Stopped, + ServerProperties_State_STATUS_Stopping, + ServerProperties_State_STATUS_Updating)) + gens["Tags"] = gen.MapOf(gen.AlphaString(), gen.AlphaString()) + gens["Type"] = gen.PtrOf(gen.AlphaString()) + gens["Version"] = gen.PtrOf(gen.OneConstOf( + ServerVersion_STATUS_11, + ServerVersion_STATUS_12, + ServerVersion_STATUS_13, + ServerVersion_STATUS_14, + ServerVersion_STATUS_15, + ServerVersion_STATUS_16)) +} + +// AddRelatedPropertyGeneratorsForFlexibleServer_STATUS is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForFlexibleServer_STATUS(gens map[string]gopter.Gen) { + gens["AuthConfig"] = gen.PtrOf(AuthConfig_STATUSGenerator()) + gens["Backup"] = gen.PtrOf(Backup_STATUSGenerator()) + gens["DataEncryption"] = gen.PtrOf(DataEncryption_STATUSGenerator()) + gens["HighAvailability"] = gen.PtrOf(HighAvailability_STATUSGenerator()) + gens["Identity"] = gen.PtrOf(UserAssignedIdentity_STATUSGenerator()) + gens["MaintenanceWindow"] = gen.PtrOf(MaintenanceWindow_STATUSGenerator()) + gens["Network"] = gen.PtrOf(Network_STATUSGenerator()) + gens["PrivateEndpointConnections"] = gen.SliceOf(PrivateEndpointConnection_STATUSGenerator()) + gens["Replica"] = gen.PtrOf(Replica_STATUSGenerator()) + gens["Sku"] = gen.PtrOf(Sku_STATUSGenerator()) + gens["Storage"] = gen.PtrOf(Storage_STATUSGenerator()) + gens["SystemData"] = gen.PtrOf(SystemData_STATUSGenerator()) +} + +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 v20230601ps.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 = 100 + 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) + AddIndependentPropertyGeneratorsForAuthConfig(generators) + authConfigGenerator = gen.Struct(reflect.TypeOf(AuthConfig{}), generators) + + return authConfigGenerator +} + +// AddIndependentPropertyGeneratorsForAuthConfig is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForAuthConfig(gens map[string]gopter.Gen) { + gens["ActiveDirectoryAuth"] = gen.PtrOf(gen.OneConstOf(AuthConfig_ActiveDirectoryAuth_Disabled, AuthConfig_ActiveDirectoryAuth_Enabled)) + gens["PasswordAuth"] = gen.PtrOf(gen.OneConstOf(AuthConfig_PasswordAuth_Disabled, AuthConfig_PasswordAuth_Enabled)) + gens["TenantId"] = gen.PtrOf(gen.AlphaString()) +} + +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 v20230601ps.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. +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) + + return authConfig_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForAuthConfig_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForAuthConfig_STATUS(gens map[string]gopter.Gen) { + gens["ActiveDirectoryAuth"] = gen.PtrOf(gen.OneConstOf(AuthConfig_ActiveDirectoryAuth_STATUS_Disabled, AuthConfig_ActiveDirectoryAuth_STATUS_Enabled)) + gens["PasswordAuth"] = gen.PtrOf(gen.OneConstOf(AuthConfig_PasswordAuth_STATUS_Disabled, AuthConfig_PasswordAuth_STATUS_Enabled)) + gens["TenantId"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_Backup_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from Backup to Backup via AssignProperties_To_Backup & AssignProperties_From_Backup returns original", + prop.ForAll(RunPropertyAssignmentTestForBackup, BackupGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForBackup tests if a specific instance of Backup can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForBackup(subject Backup) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20230601ps.Backup + err := copied.AssignProperties_To_Backup(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual Backup + err = actual.AssignProperties_From_Backup(&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_Backup_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Backup via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackup, BackupGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackup runs a test to see if a specific instance of Backup round trips to JSON and back losslessly +func RunJSONSerializationTestForBackup(subject Backup) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Backup + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Backup instances for property testing - lazily instantiated by BackupGenerator() +var backupGenerator gopter.Gen + +// BackupGenerator returns a generator of Backup instances for property testing. +func BackupGenerator() gopter.Gen { + if backupGenerator != nil { + return backupGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackup(generators) + backupGenerator = gen.Struct(reflect.TypeOf(Backup{}), generators) + + return backupGenerator +} + +// AddIndependentPropertyGeneratorsForBackup is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackup(gens map[string]gopter.Gen) { + gens["BackupRetentionDays"] = gen.PtrOf(gen.Int()) + gens["GeoRedundantBackup"] = gen.PtrOf(gen.OneConstOf(Backup_GeoRedundantBackup_Disabled, Backup_GeoRedundantBackup_Enabled)) +} + +func Test_Backup_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from Backup_STATUS to Backup_STATUS via AssignProperties_To_Backup_STATUS & AssignProperties_From_Backup_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForBackup_STATUS, Backup_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForBackup_STATUS tests if a specific instance of Backup_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForBackup_STATUS(subject Backup_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 v20230601ps.Backup_STATUS + err := copied.AssignProperties_To_Backup_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual Backup_STATUS + err = actual.AssignProperties_From_Backup_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_Backup_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Backup_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackup_STATUS, Backup_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackup_STATUS runs a test to see if a specific instance of Backup_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForBackup_STATUS(subject Backup_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Backup_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Backup_STATUS instances for property testing - lazily instantiated by Backup_STATUSGenerator() +var backup_STATUSGenerator gopter.Gen + +// Backup_STATUSGenerator returns a generator of Backup_STATUS instances for property testing. +func Backup_STATUSGenerator() gopter.Gen { + if backup_STATUSGenerator != nil { + return backup_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackup_STATUS(generators) + backup_STATUSGenerator = gen.Struct(reflect.TypeOf(Backup_STATUS{}), generators) + + return backup_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForBackup_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackup_STATUS(gens map[string]gopter.Gen) { + gens["BackupRetentionDays"] = gen.PtrOf(gen.Int()) + gens["EarliestRestoreDate"] = gen.PtrOf(gen.AlphaString()) + gens["GeoRedundantBackup"] = gen.PtrOf(gen.OneConstOf(Backup_GeoRedundantBackup_STATUS_Disabled, Backup_GeoRedundantBackup_STATUS_Enabled)) +} + +func Test_DataEncryption_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from DataEncryption to DataEncryption via AssignProperties_To_DataEncryption & AssignProperties_From_DataEncryption returns original", + prop.ForAll(RunPropertyAssignmentTestForDataEncryption, DataEncryptionGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForDataEncryption tests if a specific instance of DataEncryption can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForDataEncryption(subject DataEncryption) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20230601ps.DataEncryption + err := copied.AssignProperties_To_DataEncryption(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual DataEncryption + err = actual.AssignProperties_From_DataEncryption(&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_DataEncryption_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of DataEncryption via JSON returns original", + prop.ForAll(RunJSONSerializationTestForDataEncryption, DataEncryptionGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForDataEncryption runs a test to see if a specific instance of DataEncryption round trips to JSON and back losslessly +func RunJSONSerializationTestForDataEncryption(subject DataEncryption) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual DataEncryption + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of DataEncryption instances for property testing - lazily instantiated by DataEncryptionGenerator() +var dataEncryptionGenerator gopter.Gen + +// DataEncryptionGenerator returns a generator of DataEncryption instances for property testing. +func DataEncryptionGenerator() gopter.Gen { + if dataEncryptionGenerator != nil { + return dataEncryptionGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForDataEncryption(generators) + dataEncryptionGenerator = gen.Struct(reflect.TypeOf(DataEncryption{}), generators) + + return dataEncryptionGenerator +} + +// AddIndependentPropertyGeneratorsForDataEncryption is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForDataEncryption(gens map[string]gopter.Gen) { + gens["GeoBackupEncryptionKeyStatus"] = gen.PtrOf(gen.OneConstOf(DataEncryption_GeoBackupEncryptionKeyStatus_Invalid, DataEncryption_GeoBackupEncryptionKeyStatus_Valid)) + gens["GeoBackupKeyURI"] = gen.PtrOf(gen.AlphaString()) + gens["PrimaryEncryptionKeyStatus"] = gen.PtrOf(gen.OneConstOf(DataEncryption_PrimaryEncryptionKeyStatus_Invalid, DataEncryption_PrimaryEncryptionKeyStatus_Valid)) + gens["PrimaryKeyURI"] = gen.PtrOf(gen.AlphaString()) + gens["Type"] = gen.PtrOf(gen.OneConstOf(DataEncryption_Type_AzureKeyVault, DataEncryption_Type_SystemManaged)) +} + +func Test_DataEncryption_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from DataEncryption_STATUS to DataEncryption_STATUS via AssignProperties_To_DataEncryption_STATUS & AssignProperties_From_DataEncryption_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForDataEncryption_STATUS, DataEncryption_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForDataEncryption_STATUS tests if a specific instance of DataEncryption_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForDataEncryption_STATUS(subject DataEncryption_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 v20230601ps.DataEncryption_STATUS + err := copied.AssignProperties_To_DataEncryption_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual DataEncryption_STATUS + err = actual.AssignProperties_From_DataEncryption_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_DataEncryption_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of DataEncryption_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForDataEncryption_STATUS, DataEncryption_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForDataEncryption_STATUS runs a test to see if a specific instance of DataEncryption_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForDataEncryption_STATUS(subject DataEncryption_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual DataEncryption_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of DataEncryption_STATUS instances for property testing - lazily instantiated by +// DataEncryption_STATUSGenerator() +var dataEncryption_STATUSGenerator gopter.Gen + +// DataEncryption_STATUSGenerator returns a generator of DataEncryption_STATUS instances for property testing. +func DataEncryption_STATUSGenerator() gopter.Gen { + if dataEncryption_STATUSGenerator != nil { + return dataEncryption_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForDataEncryption_STATUS(generators) + dataEncryption_STATUSGenerator = gen.Struct(reflect.TypeOf(DataEncryption_STATUS{}), generators) + + return dataEncryption_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForDataEncryption_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForDataEncryption_STATUS(gens map[string]gopter.Gen) { + gens["GeoBackupEncryptionKeyStatus"] = gen.PtrOf(gen.OneConstOf(DataEncryption_GeoBackupEncryptionKeyStatus_STATUS_Invalid, DataEncryption_GeoBackupEncryptionKeyStatus_STATUS_Valid)) + gens["GeoBackupKeyURI"] = gen.PtrOf(gen.AlphaString()) + gens["GeoBackupUserAssignedIdentityId"] = gen.PtrOf(gen.AlphaString()) + gens["PrimaryEncryptionKeyStatus"] = gen.PtrOf(gen.OneConstOf(DataEncryption_PrimaryEncryptionKeyStatus_STATUS_Invalid, DataEncryption_PrimaryEncryptionKeyStatus_STATUS_Valid)) + gens["PrimaryKeyURI"] = gen.PtrOf(gen.AlphaString()) + gens["PrimaryUserAssignedIdentityId"] = gen.PtrOf(gen.AlphaString()) + gens["Type"] = gen.PtrOf(gen.OneConstOf(DataEncryption_Type_STATUS_AzureKeyVault, DataEncryption_Type_STATUS_SystemManaged)) +} + +func Test_FlexibleServerOperatorSpec_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from FlexibleServerOperatorSpec to FlexibleServerOperatorSpec via AssignProperties_To_FlexibleServerOperatorSpec & AssignProperties_From_FlexibleServerOperatorSpec returns original", + prop.ForAll(RunPropertyAssignmentTestForFlexibleServerOperatorSpec, FlexibleServerOperatorSpecGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForFlexibleServerOperatorSpec tests if a specific instance of FlexibleServerOperatorSpec can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForFlexibleServerOperatorSpec(subject FlexibleServerOperatorSpec) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20230601ps.FlexibleServerOperatorSpec + err := copied.AssignProperties_To_FlexibleServerOperatorSpec(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual FlexibleServerOperatorSpec + err = actual.AssignProperties_From_FlexibleServerOperatorSpec(&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_FlexibleServerOperatorSpec_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of FlexibleServerOperatorSpec via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServerOperatorSpec, FlexibleServerOperatorSpecGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServerOperatorSpec runs a test to see if a specific instance of FlexibleServerOperatorSpec round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServerOperatorSpec(subject FlexibleServerOperatorSpec) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServerOperatorSpec + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of FlexibleServerOperatorSpec instances for property testing - lazily instantiated by +// FlexibleServerOperatorSpecGenerator() +var flexibleServerOperatorSpecGenerator gopter.Gen + +// FlexibleServerOperatorSpecGenerator returns a generator of FlexibleServerOperatorSpec instances for property testing. +func FlexibleServerOperatorSpecGenerator() gopter.Gen { + if flexibleServerOperatorSpecGenerator != nil { + return flexibleServerOperatorSpecGenerator + } + + generators := make(map[string]gopter.Gen) + AddRelatedPropertyGeneratorsForFlexibleServerOperatorSpec(generators) + flexibleServerOperatorSpecGenerator = gen.Struct(reflect.TypeOf(FlexibleServerOperatorSpec{}), generators) + + return flexibleServerOperatorSpecGenerator +} + +// AddRelatedPropertyGeneratorsForFlexibleServerOperatorSpec is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForFlexibleServerOperatorSpec(gens map[string]gopter.Gen) { + gens["ConfigMaps"] = gen.PtrOf(FlexibleServerOperatorConfigMapsGenerator()) + gens["Secrets"] = gen.PtrOf(FlexibleServerOperatorSecretsGenerator()) +} + +func Test_HighAvailability_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from HighAvailability to HighAvailability via AssignProperties_To_HighAvailability & AssignProperties_From_HighAvailability returns original", + prop.ForAll(RunPropertyAssignmentTestForHighAvailability, HighAvailabilityGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForHighAvailability tests if a specific instance of HighAvailability can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForHighAvailability(subject HighAvailability) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20230601ps.HighAvailability + err := copied.AssignProperties_To_HighAvailability(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual HighAvailability + err = actual.AssignProperties_From_HighAvailability(&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_HighAvailability_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of HighAvailability via JSON returns original", + prop.ForAll(RunJSONSerializationTestForHighAvailability, HighAvailabilityGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForHighAvailability runs a test to see if a specific instance of HighAvailability round trips to JSON and back losslessly +func RunJSONSerializationTestForHighAvailability(subject HighAvailability) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual HighAvailability + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of HighAvailability instances for property testing - lazily instantiated by HighAvailabilityGenerator() +var highAvailabilityGenerator gopter.Gen + +// HighAvailabilityGenerator returns a generator of HighAvailability instances for property testing. +func HighAvailabilityGenerator() gopter.Gen { + if highAvailabilityGenerator != nil { + return highAvailabilityGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForHighAvailability(generators) + highAvailabilityGenerator = gen.Struct(reflect.TypeOf(HighAvailability{}), generators) + + return highAvailabilityGenerator +} + +// AddIndependentPropertyGeneratorsForHighAvailability is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForHighAvailability(gens map[string]gopter.Gen) { + gens["Mode"] = gen.PtrOf(gen.OneConstOf(HighAvailability_Mode_Disabled, HighAvailability_Mode_SameZone, HighAvailability_Mode_ZoneRedundant)) + gens["StandbyAvailabilityZone"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_HighAvailability_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from HighAvailability_STATUS to HighAvailability_STATUS via AssignProperties_To_HighAvailability_STATUS & AssignProperties_From_HighAvailability_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForHighAvailability_STATUS, HighAvailability_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForHighAvailability_STATUS tests if a specific instance of HighAvailability_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForHighAvailability_STATUS(subject HighAvailability_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 v20230601ps.HighAvailability_STATUS + err := copied.AssignProperties_To_HighAvailability_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual HighAvailability_STATUS + err = actual.AssignProperties_From_HighAvailability_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_HighAvailability_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of HighAvailability_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForHighAvailability_STATUS, HighAvailability_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForHighAvailability_STATUS runs a test to see if a specific instance of HighAvailability_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForHighAvailability_STATUS(subject HighAvailability_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual HighAvailability_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of HighAvailability_STATUS instances for property testing - lazily instantiated by +// HighAvailability_STATUSGenerator() +var highAvailability_STATUSGenerator gopter.Gen + +// HighAvailability_STATUSGenerator returns a generator of HighAvailability_STATUS instances for property testing. +func HighAvailability_STATUSGenerator() gopter.Gen { + if highAvailability_STATUSGenerator != nil { + return highAvailability_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForHighAvailability_STATUS(generators) + highAvailability_STATUSGenerator = gen.Struct(reflect.TypeOf(HighAvailability_STATUS{}), generators) + + return highAvailability_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForHighAvailability_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForHighAvailability_STATUS(gens map[string]gopter.Gen) { + gens["Mode"] = gen.PtrOf(gen.OneConstOf(HighAvailability_Mode_STATUS_Disabled, HighAvailability_Mode_STATUS_SameZone, HighAvailability_Mode_STATUS_ZoneRedundant)) + gens["StandbyAvailabilityZone"] = gen.PtrOf(gen.AlphaString()) + gens["State"] = gen.PtrOf(gen.OneConstOf( + HighAvailability_State_STATUS_CreatingStandby, + HighAvailability_State_STATUS_FailingOver, + HighAvailability_State_STATUS_Healthy, + HighAvailability_State_STATUS_NotEnabled, + HighAvailability_State_STATUS_RemovingStandby, + HighAvailability_State_STATUS_ReplicatingData)) +} + +func Test_MaintenanceWindow_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from MaintenanceWindow to MaintenanceWindow via AssignProperties_To_MaintenanceWindow & AssignProperties_From_MaintenanceWindow returns original", + prop.ForAll(RunPropertyAssignmentTestForMaintenanceWindow, MaintenanceWindowGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForMaintenanceWindow tests if a specific instance of MaintenanceWindow can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForMaintenanceWindow(subject MaintenanceWindow) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20230601ps.MaintenanceWindow + err := copied.AssignProperties_To_MaintenanceWindow(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual MaintenanceWindow + err = actual.AssignProperties_From_MaintenanceWindow(&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_MaintenanceWindow_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of MaintenanceWindow via JSON returns original", + prop.ForAll(RunJSONSerializationTestForMaintenanceWindow, MaintenanceWindowGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForMaintenanceWindow runs a test to see if a specific instance of MaintenanceWindow round trips to JSON and back losslessly +func RunJSONSerializationTestForMaintenanceWindow(subject MaintenanceWindow) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual MaintenanceWindow + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of MaintenanceWindow instances for property testing - lazily instantiated by MaintenanceWindowGenerator() +var maintenanceWindowGenerator gopter.Gen + +// MaintenanceWindowGenerator returns a generator of MaintenanceWindow instances for property testing. +func MaintenanceWindowGenerator() gopter.Gen { + if maintenanceWindowGenerator != nil { + return maintenanceWindowGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForMaintenanceWindow(generators) + maintenanceWindowGenerator = gen.Struct(reflect.TypeOf(MaintenanceWindow{}), generators) + + return maintenanceWindowGenerator +} + +// AddIndependentPropertyGeneratorsForMaintenanceWindow is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForMaintenanceWindow(gens map[string]gopter.Gen) { + gens["CustomWindow"] = gen.PtrOf(gen.AlphaString()) + gens["DayOfWeek"] = gen.PtrOf(gen.Int()) + gens["StartHour"] = gen.PtrOf(gen.Int()) + gens["StartMinute"] = gen.PtrOf(gen.Int()) +} + +func Test_MaintenanceWindow_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from MaintenanceWindow_STATUS to MaintenanceWindow_STATUS via AssignProperties_To_MaintenanceWindow_STATUS & AssignProperties_From_MaintenanceWindow_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForMaintenanceWindow_STATUS, MaintenanceWindow_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForMaintenanceWindow_STATUS tests if a specific instance of MaintenanceWindow_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForMaintenanceWindow_STATUS(subject MaintenanceWindow_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 v20230601ps.MaintenanceWindow_STATUS + err := copied.AssignProperties_To_MaintenanceWindow_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual MaintenanceWindow_STATUS + err = actual.AssignProperties_From_MaintenanceWindow_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_MaintenanceWindow_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of MaintenanceWindow_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForMaintenanceWindow_STATUS, MaintenanceWindow_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForMaintenanceWindow_STATUS runs a test to see if a specific instance of MaintenanceWindow_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForMaintenanceWindow_STATUS(subject MaintenanceWindow_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual MaintenanceWindow_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of MaintenanceWindow_STATUS instances for property testing - lazily instantiated by +// MaintenanceWindow_STATUSGenerator() +var maintenanceWindow_STATUSGenerator gopter.Gen + +// MaintenanceWindow_STATUSGenerator returns a generator of MaintenanceWindow_STATUS instances for property testing. +func MaintenanceWindow_STATUSGenerator() gopter.Gen { + if maintenanceWindow_STATUSGenerator != nil { + return maintenanceWindow_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForMaintenanceWindow_STATUS(generators) + maintenanceWindow_STATUSGenerator = gen.Struct(reflect.TypeOf(MaintenanceWindow_STATUS{}), generators) + + return maintenanceWindow_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForMaintenanceWindow_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForMaintenanceWindow_STATUS(gens map[string]gopter.Gen) { + gens["CustomWindow"] = gen.PtrOf(gen.AlphaString()) + gens["DayOfWeek"] = gen.PtrOf(gen.Int()) + gens["StartHour"] = gen.PtrOf(gen.Int()) + gens["StartMinute"] = gen.PtrOf(gen.Int()) +} + +func Test_Network_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from Network to Network via AssignProperties_To_Network & AssignProperties_From_Network returns original", + prop.ForAll(RunPropertyAssignmentTestForNetwork, NetworkGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForNetwork tests if a specific instance of Network can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForNetwork(subject Network) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20230601ps.Network + err := copied.AssignProperties_To_Network(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual Network + err = actual.AssignProperties_From_Network(&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_Network_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Network via JSON returns original", + prop.ForAll(RunJSONSerializationTestForNetwork, NetworkGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForNetwork runs a test to see if a specific instance of Network round trips to JSON and back losslessly +func RunJSONSerializationTestForNetwork(subject Network) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Network + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Network instances for property testing - lazily instantiated by NetworkGenerator() +var networkGenerator gopter.Gen + +// NetworkGenerator returns a generator of Network instances for property testing. +func NetworkGenerator() gopter.Gen { + if networkGenerator != nil { + return networkGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForNetwork(generators) + networkGenerator = gen.Struct(reflect.TypeOf(Network{}), generators) + + return networkGenerator +} + +// AddIndependentPropertyGeneratorsForNetwork is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForNetwork(gens map[string]gopter.Gen) { + gens["PublicNetworkAccess"] = gen.PtrOf(gen.OneConstOf(Network_PublicNetworkAccess_Disabled, Network_PublicNetworkAccess_Enabled)) +} + +func Test_Network_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from Network_STATUS to Network_STATUS via AssignProperties_To_Network_STATUS & AssignProperties_From_Network_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForNetwork_STATUS, Network_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForNetwork_STATUS tests if a specific instance of Network_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForNetwork_STATUS(subject Network_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 v20230601ps.Network_STATUS + err := copied.AssignProperties_To_Network_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual Network_STATUS + err = actual.AssignProperties_From_Network_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_Network_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Network_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForNetwork_STATUS, Network_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForNetwork_STATUS runs a test to see if a specific instance of Network_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForNetwork_STATUS(subject Network_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Network_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Network_STATUS instances for property testing - lazily instantiated by Network_STATUSGenerator() +var network_STATUSGenerator gopter.Gen + +// Network_STATUSGenerator returns a generator of Network_STATUS instances for property testing. +func Network_STATUSGenerator() gopter.Gen { + if network_STATUSGenerator != nil { + return network_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForNetwork_STATUS(generators) + network_STATUSGenerator = gen.Struct(reflect.TypeOf(Network_STATUS{}), generators) + + return network_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForNetwork_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForNetwork_STATUS(gens map[string]gopter.Gen) { + gens["DelegatedSubnetResourceId"] = gen.PtrOf(gen.AlphaString()) + gens["PrivateDnsZoneArmResourceId"] = gen.PtrOf(gen.AlphaString()) + gens["PublicNetworkAccess"] = gen.PtrOf(gen.OneConstOf(Network_PublicNetworkAccess_STATUS_Disabled, Network_PublicNetworkAccess_STATUS_Enabled)) +} + +func Test_PrivateEndpointConnection_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from PrivateEndpointConnection_STATUS to PrivateEndpointConnection_STATUS via AssignProperties_To_PrivateEndpointConnection_STATUS & AssignProperties_From_PrivateEndpointConnection_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForPrivateEndpointConnection_STATUS, PrivateEndpointConnection_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForPrivateEndpointConnection_STATUS tests if a specific instance of PrivateEndpointConnection_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForPrivateEndpointConnection_STATUS(subject PrivateEndpointConnection_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 v20230601ps.PrivateEndpointConnection_STATUS + err := copied.AssignProperties_To_PrivateEndpointConnection_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual PrivateEndpointConnection_STATUS + err = actual.AssignProperties_From_PrivateEndpointConnection_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_PrivateEndpointConnection_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of PrivateEndpointConnection_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForPrivateEndpointConnection_STATUS, PrivateEndpointConnection_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForPrivateEndpointConnection_STATUS runs a test to see if a specific instance of PrivateEndpointConnection_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForPrivateEndpointConnection_STATUS(subject PrivateEndpointConnection_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual PrivateEndpointConnection_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of PrivateEndpointConnection_STATUS instances for property testing - lazily instantiated by +// PrivateEndpointConnection_STATUSGenerator() +var privateEndpointConnection_STATUSGenerator gopter.Gen + +// PrivateEndpointConnection_STATUSGenerator returns a generator of PrivateEndpointConnection_STATUS instances for property testing. +func PrivateEndpointConnection_STATUSGenerator() gopter.Gen { + if privateEndpointConnection_STATUSGenerator != nil { + return privateEndpointConnection_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForPrivateEndpointConnection_STATUS(generators) + privateEndpointConnection_STATUSGenerator = gen.Struct(reflect.TypeOf(PrivateEndpointConnection_STATUS{}), generators) + + return privateEndpointConnection_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForPrivateEndpointConnection_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForPrivateEndpointConnection_STATUS(gens map[string]gopter.Gen) { + gens["Id"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_Replica_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from Replica to Replica via AssignProperties_To_Replica & AssignProperties_From_Replica returns original", + prop.ForAll(RunPropertyAssignmentTestForReplica, ReplicaGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForReplica tests if a specific instance of Replica can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForReplica(subject Replica) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20230601ps.Replica + err := copied.AssignProperties_To_Replica(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual Replica + err = actual.AssignProperties_From_Replica(&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_Replica_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Replica via JSON returns original", + prop.ForAll(RunJSONSerializationTestForReplica, ReplicaGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForReplica runs a test to see if a specific instance of Replica round trips to JSON and back losslessly +func RunJSONSerializationTestForReplica(subject Replica) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Replica + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Replica instances for property testing - lazily instantiated by ReplicaGenerator() +var replicaGenerator gopter.Gen + +// ReplicaGenerator returns a generator of Replica instances for property testing. +func ReplicaGenerator() gopter.Gen { + if replicaGenerator != nil { + return replicaGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForReplica(generators) + replicaGenerator = gen.Struct(reflect.TypeOf(Replica{}), generators) + + return replicaGenerator +} + +// AddIndependentPropertyGeneratorsForReplica is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForReplica(gens map[string]gopter.Gen) { + gens["PromoteMode"] = gen.PtrOf(gen.OneConstOf(Replica_PromoteMode_Standalone, Replica_PromoteMode_Switchover)) + gens["PromoteOption"] = gen.PtrOf(gen.OneConstOf(Replica_PromoteOption_Forced, Replica_PromoteOption_Planned)) + gens["Role"] = gen.PtrOf(gen.OneConstOf( + ReplicationRole_AsyncReplica, + ReplicationRole_GeoAsyncReplica, + ReplicationRole_None, + ReplicationRole_Primary)) +} + +func Test_Replica_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from Replica_STATUS to Replica_STATUS via AssignProperties_To_Replica_STATUS & AssignProperties_From_Replica_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForReplica_STATUS, Replica_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForReplica_STATUS tests if a specific instance of Replica_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForReplica_STATUS(subject Replica_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 v20230601ps.Replica_STATUS + err := copied.AssignProperties_To_Replica_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual Replica_STATUS + err = actual.AssignProperties_From_Replica_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_Replica_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Replica_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForReplica_STATUS, Replica_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForReplica_STATUS runs a test to see if a specific instance of Replica_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForReplica_STATUS(subject Replica_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Replica_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Replica_STATUS instances for property testing - lazily instantiated by Replica_STATUSGenerator() +var replica_STATUSGenerator gopter.Gen + +// Replica_STATUSGenerator returns a generator of Replica_STATUS instances for property testing. +func Replica_STATUSGenerator() gopter.Gen { + if replica_STATUSGenerator != nil { + return replica_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForReplica_STATUS(generators) + replica_STATUSGenerator = gen.Struct(reflect.TypeOf(Replica_STATUS{}), generators) + + return replica_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForReplica_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForReplica_STATUS(gens map[string]gopter.Gen) { + gens["Capacity"] = gen.PtrOf(gen.Int()) + gens["PromoteMode"] = gen.PtrOf(gen.OneConstOf(Replica_PromoteMode_STATUS_Standalone, Replica_PromoteMode_STATUS_Switchover)) + gens["PromoteOption"] = gen.PtrOf(gen.OneConstOf(Replica_PromoteOption_STATUS_Forced, Replica_PromoteOption_STATUS_Planned)) + gens["ReplicationState"] = gen.PtrOf(gen.OneConstOf( + Replica_ReplicationState_STATUS_Active, + Replica_ReplicationState_STATUS_Broken, + Replica_ReplicationState_STATUS_Catchup, + Replica_ReplicationState_STATUS_Provisioning, + Replica_ReplicationState_STATUS_Reconfiguring, + Replica_ReplicationState_STATUS_Updating)) + gens["Role"] = gen.PtrOf(gen.OneConstOf( + ReplicationRole_STATUS_AsyncReplica, + ReplicationRole_STATUS_GeoAsyncReplica, + ReplicationRole_STATUS_None, + ReplicationRole_STATUS_Primary)) +} + +func Test_Sku_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from Sku to Sku via AssignProperties_To_Sku & AssignProperties_From_Sku returns original", + prop.ForAll(RunPropertyAssignmentTestForSku, SkuGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForSku tests if a specific instance of Sku can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForSku(subject Sku) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20230601ps.Sku + err := copied.AssignProperties_To_Sku(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual Sku + err = actual.AssignProperties_From_Sku(&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_Sku_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Sku via JSON returns original", + prop.ForAll(RunJSONSerializationTestForSku, SkuGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForSku runs a test to see if a specific instance of Sku round trips to JSON and back losslessly +func RunJSONSerializationTestForSku(subject Sku) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Sku + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Sku instances for property testing - lazily instantiated by SkuGenerator() +var skuGenerator gopter.Gen + +// SkuGenerator returns a generator of Sku instances for property testing. +func SkuGenerator() gopter.Gen { + if skuGenerator != nil { + return skuGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForSku(generators) + skuGenerator = gen.Struct(reflect.TypeOf(Sku{}), generators) + + return skuGenerator +} + +// AddIndependentPropertyGeneratorsForSku is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForSku(gens map[string]gopter.Gen) { + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["Tier"] = gen.PtrOf(gen.OneConstOf(Sku_Tier_Burstable, Sku_Tier_GeneralPurpose, Sku_Tier_MemoryOptimized)) +} + +func Test_Sku_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from Sku_STATUS to Sku_STATUS via AssignProperties_To_Sku_STATUS & AssignProperties_From_Sku_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForSku_STATUS, Sku_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForSku_STATUS tests if a specific instance of Sku_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForSku_STATUS(subject Sku_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 v20230601ps.Sku_STATUS + err := copied.AssignProperties_To_Sku_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual Sku_STATUS + err = actual.AssignProperties_From_Sku_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_Sku_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Sku_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForSku_STATUS, Sku_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForSku_STATUS runs a test to see if a specific instance of Sku_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForSku_STATUS(subject Sku_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Sku_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Sku_STATUS instances for property testing - lazily instantiated by Sku_STATUSGenerator() +var sku_STATUSGenerator gopter.Gen + +// Sku_STATUSGenerator returns a generator of Sku_STATUS instances for property testing. +func Sku_STATUSGenerator() gopter.Gen { + if sku_STATUSGenerator != nil { + return sku_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForSku_STATUS(generators) + sku_STATUSGenerator = gen.Struct(reflect.TypeOf(Sku_STATUS{}), generators) + + return sku_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForSku_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForSku_STATUS(gens map[string]gopter.Gen) { + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["Tier"] = gen.PtrOf(gen.OneConstOf(Sku_Tier_STATUS_Burstable, Sku_Tier_STATUS_GeneralPurpose, Sku_Tier_STATUS_MemoryOptimized)) +} + +func Test_Storage_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from Storage to Storage via AssignProperties_To_Storage & AssignProperties_From_Storage returns original", + prop.ForAll(RunPropertyAssignmentTestForStorage, StorageGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForStorage tests if a specific instance of Storage can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForStorage(subject Storage) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20230601ps.Storage + err := copied.AssignProperties_To_Storage(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual Storage + err = actual.AssignProperties_From_Storage(&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_Storage_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Storage via JSON returns original", + prop.ForAll(RunJSONSerializationTestForStorage, StorageGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForStorage runs a test to see if a specific instance of Storage round trips to JSON and back losslessly +func RunJSONSerializationTestForStorage(subject Storage) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Storage + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Storage instances for property testing - lazily instantiated by StorageGenerator() +var storageGenerator gopter.Gen + +// StorageGenerator returns a generator of Storage instances for property testing. +func StorageGenerator() gopter.Gen { + if storageGenerator != nil { + return storageGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForStorage(generators) + storageGenerator = gen.Struct(reflect.TypeOf(Storage{}), generators) + + return storageGenerator +} + +// AddIndependentPropertyGeneratorsForStorage is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForStorage(gens map[string]gopter.Gen) { + gens["AutoGrow"] = gen.PtrOf(gen.OneConstOf(Storage_AutoGrow_Disabled, Storage_AutoGrow_Enabled)) + gens["Iops"] = gen.PtrOf(gen.Int()) + gens["StorageSizeGB"] = gen.PtrOf(gen.Int()) + gens["Throughput"] = gen.PtrOf(gen.Int()) + gens["Tier"] = gen.PtrOf(gen.OneConstOf( + Storage_Tier_P1, + Storage_Tier_P10, + Storage_Tier_P15, + Storage_Tier_P2, + Storage_Tier_P20, + Storage_Tier_P3, + Storage_Tier_P30, + Storage_Tier_P4, + Storage_Tier_P40, + Storage_Tier_P50, + Storage_Tier_P6, + Storage_Tier_P60, + Storage_Tier_P70, + Storage_Tier_P80)) + gens["Type"] = gen.PtrOf(gen.OneConstOf(Storage_Type_PremiumV2_LRS, Storage_Type_Premium_LRS)) +} + +func Test_Storage_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from Storage_STATUS to Storage_STATUS via AssignProperties_To_Storage_STATUS & AssignProperties_From_Storage_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForStorage_STATUS, Storage_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForStorage_STATUS tests if a specific instance of Storage_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForStorage_STATUS(subject Storage_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 v20230601ps.Storage_STATUS + err := copied.AssignProperties_To_Storage_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual Storage_STATUS + err = actual.AssignProperties_From_Storage_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_Storage_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Storage_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForStorage_STATUS, Storage_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForStorage_STATUS runs a test to see if a specific instance of Storage_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForStorage_STATUS(subject Storage_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Storage_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Storage_STATUS instances for property testing - lazily instantiated by Storage_STATUSGenerator() +var storage_STATUSGenerator gopter.Gen + +// Storage_STATUSGenerator returns a generator of Storage_STATUS instances for property testing. +func Storage_STATUSGenerator() gopter.Gen { + if storage_STATUSGenerator != nil { + return storage_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForStorage_STATUS(generators) + storage_STATUSGenerator = gen.Struct(reflect.TypeOf(Storage_STATUS{}), generators) + + return storage_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForStorage_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForStorage_STATUS(gens map[string]gopter.Gen) { + gens["AutoGrow"] = gen.PtrOf(gen.OneConstOf(Storage_AutoGrow_STATUS_Disabled, Storage_AutoGrow_STATUS_Enabled)) + gens["Iops"] = gen.PtrOf(gen.Int()) + gens["StorageSizeGB"] = gen.PtrOf(gen.Int()) + gens["Throughput"] = gen.PtrOf(gen.Int()) + gens["Tier"] = gen.PtrOf(gen.OneConstOf( + Storage_Tier_STATUS_P1, + Storage_Tier_STATUS_P10, + Storage_Tier_STATUS_P15, + Storage_Tier_STATUS_P2, + Storage_Tier_STATUS_P20, + Storage_Tier_STATUS_P3, + Storage_Tier_STATUS_P30, + Storage_Tier_STATUS_P4, + Storage_Tier_STATUS_P40, + Storage_Tier_STATUS_P50, + Storage_Tier_STATUS_P6, + Storage_Tier_STATUS_P60, + Storage_Tier_STATUS_P70, + Storage_Tier_STATUS_P80)) + gens["Type"] = gen.PtrOf(gen.OneConstOf(Storage_Type_STATUS_PremiumV2_LRS, Storage_Type_STATUS_Premium_LRS)) +} + +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 v20230601ps.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_UserAssignedIdentity_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from UserAssignedIdentity to UserAssignedIdentity via AssignProperties_To_UserAssignedIdentity & AssignProperties_From_UserAssignedIdentity returns original", + prop.ForAll(RunPropertyAssignmentTestForUserAssignedIdentity, UserAssignedIdentityGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForUserAssignedIdentity tests if a specific instance of UserAssignedIdentity can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForUserAssignedIdentity(subject UserAssignedIdentity) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20230601ps.UserAssignedIdentity + err := copied.AssignProperties_To_UserAssignedIdentity(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual UserAssignedIdentity + err = actual.AssignProperties_From_UserAssignedIdentity(&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_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of UserAssignedIdentity via JSON returns original", + prop.ForAll(RunJSONSerializationTestForUserAssignedIdentity, UserAssignedIdentityGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForUserAssignedIdentity runs a test to see if a specific instance of UserAssignedIdentity round trips to JSON and back losslessly +func RunJSONSerializationTestForUserAssignedIdentity(subject UserAssignedIdentity) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual UserAssignedIdentity + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(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 instances for property testing - lazily instantiated by +// UserAssignedIdentityGenerator() +var userAssignedIdentityGenerator gopter.Gen + +// UserAssignedIdentityGenerator returns a generator of UserAssignedIdentity instances for property testing. +// We first initialize userAssignedIdentityGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func UserAssignedIdentityGenerator() gopter.Gen { + if userAssignedIdentityGenerator != nil { + return userAssignedIdentityGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForUserAssignedIdentity(generators) + userAssignedIdentityGenerator = gen.Struct(reflect.TypeOf(UserAssignedIdentity{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForUserAssignedIdentity(generators) + AddRelatedPropertyGeneratorsForUserAssignedIdentity(generators) + userAssignedIdentityGenerator = gen.Struct(reflect.TypeOf(UserAssignedIdentity{}), generators) + + return userAssignedIdentityGenerator +} + +// AddIndependentPropertyGeneratorsForUserAssignedIdentity is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForUserAssignedIdentity(gens map[string]gopter.Gen) { + gens["Type"] = gen.PtrOf(gen.OneConstOf(UserAssignedIdentity_Type_None, UserAssignedIdentity_Type_UserAssigned)) +} + +// AddRelatedPropertyGeneratorsForUserAssignedIdentity is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForUserAssignedIdentity(gens map[string]gopter.Gen) { + gens["UserAssignedIdentities"] = gen.SliceOf(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 v20230601ps.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. +// We first initialize userAssignedIdentity_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 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) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForUserAssignedIdentity_STATUS(generators) + AddRelatedPropertyGeneratorsForUserAssignedIdentity_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["TenantId"] = gen.PtrOf(gen.AlphaString()) + gens["Type"] = gen.PtrOf(gen.OneConstOf(UserAssignedIdentity_Type_STATUS_None, UserAssignedIdentity_Type_STATUS_UserAssigned)) +} + +// AddRelatedPropertyGeneratorsForUserAssignedIdentity_STATUS is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForUserAssignedIdentity_STATUS(gens map[string]gopter.Gen) { + gens["UserAssignedIdentities"] = gen.MapOf(gen.AlphaString(), UserIdentity_STATUSGenerator()) +} + +func Test_FlexibleServerOperatorConfigMaps_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from FlexibleServerOperatorConfigMaps to FlexibleServerOperatorConfigMaps via AssignProperties_To_FlexibleServerOperatorConfigMaps & AssignProperties_From_FlexibleServerOperatorConfigMaps returns original", + prop.ForAll(RunPropertyAssignmentTestForFlexibleServerOperatorConfigMaps, FlexibleServerOperatorConfigMapsGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForFlexibleServerOperatorConfigMaps tests if a specific instance of FlexibleServerOperatorConfigMaps can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForFlexibleServerOperatorConfigMaps(subject FlexibleServerOperatorConfigMaps) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20230601ps.FlexibleServerOperatorConfigMaps + err := copied.AssignProperties_To_FlexibleServerOperatorConfigMaps(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual FlexibleServerOperatorConfigMaps + err = actual.AssignProperties_From_FlexibleServerOperatorConfigMaps(&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_FlexibleServerOperatorConfigMaps_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of FlexibleServerOperatorConfigMaps via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServerOperatorConfigMaps, FlexibleServerOperatorConfigMapsGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServerOperatorConfigMaps runs a test to see if a specific instance of FlexibleServerOperatorConfigMaps round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServerOperatorConfigMaps(subject FlexibleServerOperatorConfigMaps) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServerOperatorConfigMaps + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of FlexibleServerOperatorConfigMaps instances for property testing - lazily instantiated by +// FlexibleServerOperatorConfigMapsGenerator() +var flexibleServerOperatorConfigMapsGenerator gopter.Gen + +// FlexibleServerOperatorConfigMapsGenerator returns a generator of FlexibleServerOperatorConfigMaps instances for property testing. +func FlexibleServerOperatorConfigMapsGenerator() gopter.Gen { + if flexibleServerOperatorConfigMapsGenerator != nil { + return flexibleServerOperatorConfigMapsGenerator + } + + generators := make(map[string]gopter.Gen) + flexibleServerOperatorConfigMapsGenerator = gen.Struct(reflect.TypeOf(FlexibleServerOperatorConfigMaps{}), generators) + + return flexibleServerOperatorConfigMapsGenerator +} + +func Test_FlexibleServerOperatorSecrets_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from FlexibleServerOperatorSecrets to FlexibleServerOperatorSecrets via AssignProperties_To_FlexibleServerOperatorSecrets & AssignProperties_From_FlexibleServerOperatorSecrets returns original", + prop.ForAll(RunPropertyAssignmentTestForFlexibleServerOperatorSecrets, FlexibleServerOperatorSecretsGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForFlexibleServerOperatorSecrets tests if a specific instance of FlexibleServerOperatorSecrets can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForFlexibleServerOperatorSecrets(subject FlexibleServerOperatorSecrets) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20230601ps.FlexibleServerOperatorSecrets + err := copied.AssignProperties_To_FlexibleServerOperatorSecrets(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual FlexibleServerOperatorSecrets + err = actual.AssignProperties_From_FlexibleServerOperatorSecrets(&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_FlexibleServerOperatorSecrets_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of FlexibleServerOperatorSecrets via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServerOperatorSecrets, FlexibleServerOperatorSecretsGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServerOperatorSecrets runs a test to see if a specific instance of FlexibleServerOperatorSecrets round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServerOperatorSecrets(subject FlexibleServerOperatorSecrets) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServerOperatorSecrets + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of FlexibleServerOperatorSecrets instances for property testing - lazily instantiated by +// FlexibleServerOperatorSecretsGenerator() +var flexibleServerOperatorSecretsGenerator gopter.Gen + +// FlexibleServerOperatorSecretsGenerator returns a generator of FlexibleServerOperatorSecrets instances for property testing. +func FlexibleServerOperatorSecretsGenerator() gopter.Gen { + if flexibleServerOperatorSecretsGenerator != nil { + return flexibleServerOperatorSecretsGenerator + } + + generators := make(map[string]gopter.Gen) + flexibleServerOperatorSecretsGenerator = gen.Struct(reflect.TypeOf(FlexibleServerOperatorSecrets{}), generators) + + return flexibleServerOperatorSecretsGenerator +} + +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 v20230601ps.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_UserIdentity_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from UserIdentity_STATUS to UserIdentity_STATUS via AssignProperties_To_UserIdentity_STATUS & AssignProperties_From_UserIdentity_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForUserIdentity_STATUS, UserIdentity_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForUserIdentity_STATUS tests if a specific instance of UserIdentity_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForUserIdentity_STATUS(subject UserIdentity_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 v20230601ps.UserIdentity_STATUS + err := copied.AssignProperties_To_UserIdentity_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual UserIdentity_STATUS + err = actual.AssignProperties_From_UserIdentity_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_UserIdentity_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of UserIdentity_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForUserIdentity_STATUS, UserIdentity_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForUserIdentity_STATUS runs a test to see if a specific instance of UserIdentity_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForUserIdentity_STATUS(subject UserIdentity_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual UserIdentity_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of UserIdentity_STATUS instances for property testing - lazily instantiated by +// UserIdentity_STATUSGenerator() +var userIdentity_STATUSGenerator gopter.Gen + +// UserIdentity_STATUSGenerator returns a generator of UserIdentity_STATUS instances for property testing. +func UserIdentity_STATUSGenerator() gopter.Gen { + if userIdentity_STATUSGenerator != nil { + return userIdentity_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForUserIdentity_STATUS(generators) + userIdentity_STATUSGenerator = gen.Struct(reflect.TypeOf(UserIdentity_STATUS{}), generators) + + return userIdentity_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForUserIdentity_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForUserIdentity_STATUS(gens map[string]gopter.Gen) { + gens["ClientId"] = gen.PtrOf(gen.AlphaString()) + gens["PrincipalId"] = gen.PtrOf(gen.AlphaString()) +} diff --git a/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_configuration_spec_arm_types_gen.go b/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_configuration_spec_arm_types_gen.go new file mode 100644 index 00000000000..86c777b64ec --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_configuration_spec_arm_types_gen.go @@ -0,0 +1,39 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20230601preview + +import "github.com/Azure/azure-service-operator/v2/pkg/genruntime" + +type FlexibleServers_Configuration_Spec_ARM struct { + Name string `json:"name,omitempty"` + + // Properties: The properties of a configuration. + Properties *ConfigurationProperties_ARM `json:"properties,omitempty"` +} + +var _ genruntime.ARMResourceSpec = &FlexibleServers_Configuration_Spec_ARM{} + +// GetAPIVersion returns the ARM API version of the resource. This is always "2023-06-01-preview" +func (configuration FlexibleServers_Configuration_Spec_ARM) GetAPIVersion() string { + return string(APIVersion_Value) +} + +// GetName returns the Name of the resource +func (configuration *FlexibleServers_Configuration_Spec_ARM) GetName() string { + return configuration.Name +} + +// GetType returns the ARM Type of the resource. This is always "Microsoft.DBforPostgreSQL/flexibleServers/configurations" +func (configuration *FlexibleServers_Configuration_Spec_ARM) GetType() string { + return "Microsoft.DBforPostgreSQL/flexibleServers/configurations" +} + +// The properties of a configuration. +type ConfigurationProperties_ARM struct { + // Source: Source of the configuration. + Source *string `json:"source,omitempty"` + + // Value: Value of the configuration. + Value *string `json:"value,omitempty"` +} diff --git a/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_configuration_spec_arm_types_gen_test.go b/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_configuration_spec_arm_types_gen_test.go new file mode 100644 index 00000000000..4b7269682ad --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_configuration_spec_arm_types_gen_test.go @@ -0,0 +1,155 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20230601preview + +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_FlexibleServers_Configuration_Spec_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of FlexibleServers_Configuration_Spec_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServers_Configuration_Spec_ARM, FlexibleServers_Configuration_Spec_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServers_Configuration_Spec_ARM runs a test to see if a specific instance of FlexibleServers_Configuration_Spec_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServers_Configuration_Spec_ARM(subject FlexibleServers_Configuration_Spec_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServers_Configuration_Spec_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of FlexibleServers_Configuration_Spec_ARM instances for property testing - lazily instantiated by +// FlexibleServers_Configuration_Spec_ARMGenerator() +var flexibleServers_Configuration_Spec_ARMGenerator gopter.Gen + +// FlexibleServers_Configuration_Spec_ARMGenerator returns a generator of FlexibleServers_Configuration_Spec_ARM instances for property testing. +// We first initialize flexibleServers_Configuration_Spec_ARMGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func FlexibleServers_Configuration_Spec_ARMGenerator() gopter.Gen { + if flexibleServers_Configuration_Spec_ARMGenerator != nil { + return flexibleServers_Configuration_Spec_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServers_Configuration_Spec_ARM(generators) + flexibleServers_Configuration_Spec_ARMGenerator = gen.Struct(reflect.TypeOf(FlexibleServers_Configuration_Spec_ARM{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServers_Configuration_Spec_ARM(generators) + AddRelatedPropertyGeneratorsForFlexibleServers_Configuration_Spec_ARM(generators) + flexibleServers_Configuration_Spec_ARMGenerator = gen.Struct(reflect.TypeOf(FlexibleServers_Configuration_Spec_ARM{}), generators) + + return flexibleServers_Configuration_Spec_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForFlexibleServers_Configuration_Spec_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForFlexibleServers_Configuration_Spec_ARM(gens map[string]gopter.Gen) { + gens["Name"] = gen.AlphaString() +} + +// AddRelatedPropertyGeneratorsForFlexibleServers_Configuration_Spec_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForFlexibleServers_Configuration_Spec_ARM(gens map[string]gopter.Gen) { + gens["Properties"] = gen.PtrOf(ConfigurationProperties_ARMGenerator()) +} + +func Test_ConfigurationProperties_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of ConfigurationProperties_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForConfigurationProperties_ARM, ConfigurationProperties_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForConfigurationProperties_ARM runs a test to see if a specific instance of ConfigurationProperties_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForConfigurationProperties_ARM(subject ConfigurationProperties_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual ConfigurationProperties_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of ConfigurationProperties_ARM instances for property testing - lazily instantiated by +// ConfigurationProperties_ARMGenerator() +var configurationProperties_ARMGenerator gopter.Gen + +// ConfigurationProperties_ARMGenerator returns a generator of ConfigurationProperties_ARM instances for property testing. +func ConfigurationProperties_ARMGenerator() gopter.Gen { + if configurationProperties_ARMGenerator != nil { + return configurationProperties_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForConfigurationProperties_ARM(generators) + configurationProperties_ARMGenerator = gen.Struct(reflect.TypeOf(ConfigurationProperties_ARM{}), generators) + + return configurationProperties_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForConfigurationProperties_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForConfigurationProperties_ARM(gens map[string]gopter.Gen) { + gens["Source"] = gen.PtrOf(gen.AlphaString()) + gens["Value"] = gen.PtrOf(gen.AlphaString()) +} diff --git a/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_configuration_status_arm_types_gen.go b/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_configuration_status_arm_types_gen.go new file mode 100644 index 00000000000..f57a199d61b --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_configuration_status_arm_types_gen.go @@ -0,0 +1,58 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20230601preview + +type FlexibleServers_Configuration_STATUS_ARM struct { + // Id: Fully qualified resource ID for the resource. E.g. + // "/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: The properties of a configuration. + Properties *ConfigurationProperties_STATUS_ARM `json:"properties,omitempty"` + + // SystemData: Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData *SystemData_STATUS_ARM `json:"systemData,omitempty"` + + // Type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string `json:"type,omitempty"` +} + +// The properties of a configuration. +type ConfigurationProperties_STATUS_ARM struct { + // AllowedValues: Allowed values of the configuration. + AllowedValues *string `json:"allowedValues,omitempty"` + + // DataType: Data type of the configuration. + DataType *ConfigurationProperties_DataType_STATUS `json:"dataType,omitempty"` + + // DefaultValue: Default value of the configuration. + DefaultValue *string `json:"defaultValue,omitempty"` + + // Description: Description of the configuration. + Description *string `json:"description,omitempty"` + + // DocumentationLink: Configuration documentation link. + DocumentationLink *string `json:"documentationLink,omitempty"` + + // IsConfigPendingRestart: Configuration is pending restart or not. + IsConfigPendingRestart *bool `json:"isConfigPendingRestart,omitempty"` + + // IsDynamicConfig: Configuration dynamic or static. + IsDynamicConfig *bool `json:"isDynamicConfig,omitempty"` + + // IsReadOnly: Configuration read-only or not. + IsReadOnly *bool `json:"isReadOnly,omitempty"` + + // Source: Source of the configuration. + Source *string `json:"source,omitempty"` + + // Unit: Configuration unit. + Unit *string `json:"unit,omitempty"` + + // Value: Value of the configuration. + Value *string `json:"value,omitempty"` +} diff --git a/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_configuration_status_arm_types_gen_test.go b/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_configuration_status_arm_types_gen_test.go new file mode 100644 index 00000000000..a77e8441d37 --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_configuration_status_arm_types_gen_test.go @@ -0,0 +1,171 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20230601preview + +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_FlexibleServers_Configuration_STATUS_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of FlexibleServers_Configuration_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServers_Configuration_STATUS_ARM, FlexibleServers_Configuration_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServers_Configuration_STATUS_ARM runs a test to see if a specific instance of FlexibleServers_Configuration_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServers_Configuration_STATUS_ARM(subject FlexibleServers_Configuration_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServers_Configuration_STATUS_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of FlexibleServers_Configuration_STATUS_ARM instances for property testing - lazily instantiated by +// FlexibleServers_Configuration_STATUS_ARMGenerator() +var flexibleServers_Configuration_STATUS_ARMGenerator gopter.Gen + +// FlexibleServers_Configuration_STATUS_ARMGenerator returns a generator of FlexibleServers_Configuration_STATUS_ARM instances for property testing. +// We first initialize flexibleServers_Configuration_STATUS_ARMGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func FlexibleServers_Configuration_STATUS_ARMGenerator() gopter.Gen { + if flexibleServers_Configuration_STATUS_ARMGenerator != nil { + return flexibleServers_Configuration_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServers_Configuration_STATUS_ARM(generators) + flexibleServers_Configuration_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(FlexibleServers_Configuration_STATUS_ARM{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServers_Configuration_STATUS_ARM(generators) + AddRelatedPropertyGeneratorsForFlexibleServers_Configuration_STATUS_ARM(generators) + flexibleServers_Configuration_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(FlexibleServers_Configuration_STATUS_ARM{}), generators) + + return flexibleServers_Configuration_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForFlexibleServers_Configuration_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForFlexibleServers_Configuration_STATUS_ARM(gens map[string]gopter.Gen) { + gens["Id"] = gen.PtrOf(gen.AlphaString()) + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["Type"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForFlexibleServers_Configuration_STATUS_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForFlexibleServers_Configuration_STATUS_ARM(gens map[string]gopter.Gen) { + gens["Properties"] = gen.PtrOf(ConfigurationProperties_STATUS_ARMGenerator()) + gens["SystemData"] = gen.PtrOf(SystemData_STATUS_ARMGenerator()) +} + +func Test_ConfigurationProperties_STATUS_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of ConfigurationProperties_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForConfigurationProperties_STATUS_ARM, ConfigurationProperties_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForConfigurationProperties_STATUS_ARM runs a test to see if a specific instance of ConfigurationProperties_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForConfigurationProperties_STATUS_ARM(subject ConfigurationProperties_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual ConfigurationProperties_STATUS_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of ConfigurationProperties_STATUS_ARM instances for property testing - lazily instantiated by +// ConfigurationProperties_STATUS_ARMGenerator() +var configurationProperties_STATUS_ARMGenerator gopter.Gen + +// ConfigurationProperties_STATUS_ARMGenerator returns a generator of ConfigurationProperties_STATUS_ARM instances for property testing. +func ConfigurationProperties_STATUS_ARMGenerator() gopter.Gen { + if configurationProperties_STATUS_ARMGenerator != nil { + return configurationProperties_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForConfigurationProperties_STATUS_ARM(generators) + configurationProperties_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(ConfigurationProperties_STATUS_ARM{}), generators) + + return configurationProperties_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForConfigurationProperties_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForConfigurationProperties_STATUS_ARM(gens map[string]gopter.Gen) { + gens["AllowedValues"] = gen.PtrOf(gen.AlphaString()) + gens["DataType"] = gen.PtrOf(gen.OneConstOf( + ConfigurationProperties_DataType_STATUS_Boolean, + ConfigurationProperties_DataType_STATUS_Enumeration, + ConfigurationProperties_DataType_STATUS_Integer, + ConfigurationProperties_DataType_STATUS_Numeric)) + gens["DefaultValue"] = gen.PtrOf(gen.AlphaString()) + gens["Description"] = gen.PtrOf(gen.AlphaString()) + gens["DocumentationLink"] = gen.PtrOf(gen.AlphaString()) + gens["IsConfigPendingRestart"] = gen.PtrOf(gen.Bool()) + gens["IsDynamicConfig"] = gen.PtrOf(gen.Bool()) + gens["IsReadOnly"] = gen.PtrOf(gen.Bool()) + gens["Source"] = gen.PtrOf(gen.AlphaString()) + gens["Unit"] = gen.PtrOf(gen.AlphaString()) + gens["Value"] = gen.PtrOf(gen.AlphaString()) +} diff --git a/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_configuration_types_gen.go b/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_configuration_types_gen.go new file mode 100644 index 00000000000..d5c17d02800 --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_configuration_types_gen.go @@ -0,0 +1,976 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20230601preview + +import ( + "fmt" + v20230601ps "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20230601preview/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/pkg/errors" + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/runtime" + "k8s.io/apimachinery/pkg/runtime/schema" + "sigs.k8s.io/controller-runtime/pkg/conversion" + "sigs.k8s.io/controller-runtime/pkg/webhook/admission" +) + +// +kubebuilder:object:root=true +// +kubebuilder:subresource:status +// +kubebuilder:printcolumn:name="Ready",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +// +kubebuilder:printcolumn:name="Severity",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].severity" +// +kubebuilder:printcolumn:name="Reason",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].reason" +// +kubebuilder:printcolumn:name="Message",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].message" +// Generator information: +// - Generated from: /postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2023-06-01-preview/Configuration.json +// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/flexibleServers/{serverName}/configurations/{configurationName} +type FlexibleServersConfiguration struct { + metav1.TypeMeta `json:",inline"` + metav1.ObjectMeta `json:"metadata,omitempty"` + Spec FlexibleServers_Configuration_Spec `json:"spec,omitempty"` + Status FlexibleServers_Configuration_STATUS `json:"status,omitempty"` +} + +var _ conditions.Conditioner = &FlexibleServersConfiguration{} + +// GetConditions returns the conditions of the resource +func (configuration *FlexibleServersConfiguration) GetConditions() conditions.Conditions { + return configuration.Status.Conditions +} + +// SetConditions sets the conditions on the resource status +func (configuration *FlexibleServersConfiguration) SetConditions(conditions conditions.Conditions) { + configuration.Status.Conditions = conditions +} + +var _ conversion.Convertible = &FlexibleServersConfiguration{} + +// ConvertFrom populates our FlexibleServersConfiguration from the provided hub FlexibleServersConfiguration +func (configuration *FlexibleServersConfiguration) ConvertFrom(hub conversion.Hub) error { + // intermediate variable for conversion + var source v20230601ps.FlexibleServersConfiguration + + err := source.ConvertFrom(hub) + if err != nil { + return errors.Wrap(err, "converting from hub to source") + } + + err = configuration.AssignProperties_From_FlexibleServersConfiguration(&source) + if err != nil { + return errors.Wrap(err, "converting from source to configuration") + } + + return nil +} + +// ConvertTo populates the provided hub FlexibleServersConfiguration from our FlexibleServersConfiguration +func (configuration *FlexibleServersConfiguration) ConvertTo(hub conversion.Hub) error { + // intermediate variable for conversion + var destination v20230601ps.FlexibleServersConfiguration + err := configuration.AssignProperties_To_FlexibleServersConfiguration(&destination) + if err != nil { + return errors.Wrap(err, "converting to destination from configuration") + } + err = destination.ConvertTo(hub) + if err != nil { + return errors.Wrap(err, "converting from destination to hub") + } + + return nil +} + +// +kubebuilder:webhook:path=/mutate-dbforpostgresql-azure-com-v1api20230601preview-flexibleserversconfiguration,mutating=true,sideEffects=None,matchPolicy=Exact,failurePolicy=fail,groups=dbforpostgresql.azure.com,resources=flexibleserversconfigurations,verbs=create;update,versions=v1api20230601preview,name=default.v1api20230601preview.flexibleserversconfigurations.dbforpostgresql.azure.com,admissionReviewVersions=v1 + +var _ admission.Defaulter = &FlexibleServersConfiguration{} + +// Default applies defaults to the FlexibleServersConfiguration resource +func (configuration *FlexibleServersConfiguration) Default() { + configuration.defaultImpl() + var temp any = configuration + if runtimeDefaulter, ok := temp.(genruntime.Defaulter); ok { + runtimeDefaulter.CustomDefault() + } +} + +// defaultAzureName defaults the Azure name of the resource to the Kubernetes name +func (configuration *FlexibleServersConfiguration) defaultAzureName() { + if configuration.Spec.AzureName == "" { + configuration.Spec.AzureName = configuration.Name + } +} + +// defaultImpl applies the code generated defaults to the FlexibleServersConfiguration resource +func (configuration *FlexibleServersConfiguration) defaultImpl() { configuration.defaultAzureName() } + +var _ genruntime.KubernetesResource = &FlexibleServersConfiguration{} + +// AzureName returns the Azure name of the resource +func (configuration *FlexibleServersConfiguration) AzureName() string { + return configuration.Spec.AzureName +} + +// GetAPIVersion returns the ARM API version of the resource. This is always "2023-06-01-preview" +func (configuration FlexibleServersConfiguration) GetAPIVersion() string { + return string(APIVersion_Value) +} + +// GetResourceScope returns the scope of the resource +func (configuration *FlexibleServersConfiguration) GetResourceScope() genruntime.ResourceScope { + return genruntime.ResourceScopeResourceGroup +} + +// GetSpec returns the specification of this resource +func (configuration *FlexibleServersConfiguration) GetSpec() genruntime.ConvertibleSpec { + return &configuration.Spec +} + +// GetStatus returns the status of this resource +func (configuration *FlexibleServersConfiguration) GetStatus() genruntime.ConvertibleStatus { + return &configuration.Status +} + +// GetSupportedOperations returns the operations supported by the resource +func (configuration *FlexibleServersConfiguration) GetSupportedOperations() []genruntime.ResourceOperation { + return []genruntime.ResourceOperation{ + genruntime.ResourceOperationGet, + genruntime.ResourceOperationPut, + } +} + +// GetType returns the ARM Type of the resource. This is always "Microsoft.DBforPostgreSQL/flexibleServers/configurations" +func (configuration *FlexibleServersConfiguration) GetType() string { + return "Microsoft.DBforPostgreSQL/flexibleServers/configurations" +} + +// NewEmptyStatus returns a new empty (blank) status +func (configuration *FlexibleServersConfiguration) NewEmptyStatus() genruntime.ConvertibleStatus { + return &FlexibleServers_Configuration_STATUS{} +} + +// Owner returns the ResourceReference of the owner +func (configuration *FlexibleServersConfiguration) Owner() *genruntime.ResourceReference { + group, kind := genruntime.LookupOwnerGroupKind(configuration.Spec) + return configuration.Spec.Owner.AsResourceReference(group, kind) +} + +// SetStatus sets the status of this resource +func (configuration *FlexibleServersConfiguration) SetStatus(status genruntime.ConvertibleStatus) error { + // If we have exactly the right type of status, assign it + if st, ok := status.(*FlexibleServers_Configuration_STATUS); ok { + configuration.Status = *st + return nil + } + + // Convert status to required version + var st FlexibleServers_Configuration_STATUS + err := status.ConvertStatusTo(&st) + if err != nil { + return errors.Wrap(err, "failed to convert status") + } + + configuration.Status = st + return nil +} + +// +kubebuilder:webhook:path=/validate-dbforpostgresql-azure-com-v1api20230601preview-flexibleserversconfiguration,mutating=false,sideEffects=None,matchPolicy=Exact,failurePolicy=fail,groups=dbforpostgresql.azure.com,resources=flexibleserversconfigurations,verbs=create;update,versions=v1api20230601preview,name=validate.v1api20230601preview.flexibleserversconfigurations.dbforpostgresql.azure.com,admissionReviewVersions=v1 + +var _ admission.Validator = &FlexibleServersConfiguration{} + +// ValidateCreate validates the creation of the resource +func (configuration *FlexibleServersConfiguration) ValidateCreate() (admission.Warnings, error) { + validations := configuration.createValidations() + var temp any = configuration + if runtimeValidator, ok := temp.(genruntime.Validator); ok { + validations = append(validations, runtimeValidator.CreateValidations()...) + } + return genruntime.ValidateCreate(validations) +} + +// ValidateDelete validates the deletion of the resource +func (configuration *FlexibleServersConfiguration) ValidateDelete() (admission.Warnings, error) { + validations := configuration.deleteValidations() + var temp any = configuration + if runtimeValidator, ok := temp.(genruntime.Validator); ok { + validations = append(validations, runtimeValidator.DeleteValidations()...) + } + return genruntime.ValidateDelete(validations) +} + +// ValidateUpdate validates an update of the resource +func (configuration *FlexibleServersConfiguration) ValidateUpdate(old runtime.Object) (admission.Warnings, error) { + validations := configuration.updateValidations() + var temp any = configuration + 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 (configuration *FlexibleServersConfiguration) createValidations() []func() (admission.Warnings, error) { + return []func() (admission.Warnings, error){configuration.validateResourceReferences, configuration.validateOwnerReference} +} + +// deleteValidations validates the deletion of the resource +func (configuration *FlexibleServersConfiguration) deleteValidations() []func() (admission.Warnings, error) { + return nil +} + +// updateValidations validates the update of the resource +func (configuration *FlexibleServersConfiguration) updateValidations() []func(old runtime.Object) (admission.Warnings, error) { + return []func(old runtime.Object) (admission.Warnings, error){ + func(old runtime.Object) (admission.Warnings, error) { + return configuration.validateResourceReferences() + }, + configuration.validateWriteOnceProperties, + func(old runtime.Object) (admission.Warnings, error) { + return configuration.validateOwnerReference() + }, + } +} + +// validateOwnerReference validates the owner field +func (configuration *FlexibleServersConfiguration) validateOwnerReference() (admission.Warnings, error) { + return genruntime.ValidateOwner(configuration) +} + +// validateResourceReferences validates all resource references +func (configuration *FlexibleServersConfiguration) validateResourceReferences() (admission.Warnings, error) { + refs, err := reflecthelpers.FindResourceReferences(&configuration.Spec) + if err != nil { + return nil, err + } + return genruntime.ValidateResourceReferences(refs) +} + +// validateWriteOnceProperties validates all WriteOnce properties +func (configuration *FlexibleServersConfiguration) validateWriteOnceProperties(old runtime.Object) (admission.Warnings, error) { + oldObj, ok := old.(*FlexibleServersConfiguration) + if !ok { + return nil, nil + } + + return genruntime.ValidateWriteOnceProperties(oldObj, configuration) +} + +// AssignProperties_From_FlexibleServersConfiguration populates our FlexibleServersConfiguration from the provided source FlexibleServersConfiguration +func (configuration *FlexibleServersConfiguration) AssignProperties_From_FlexibleServersConfiguration(source *v20230601ps.FlexibleServersConfiguration) error { + + // ObjectMeta + configuration.ObjectMeta = *source.ObjectMeta.DeepCopy() + + // Spec + var spec FlexibleServers_Configuration_Spec + err := spec.AssignProperties_From_FlexibleServers_Configuration_Spec(&source.Spec) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_FlexibleServers_Configuration_Spec() to populate field Spec") + } + configuration.Spec = spec + + // Status + var status FlexibleServers_Configuration_STATUS + err = status.AssignProperties_From_FlexibleServers_Configuration_STATUS(&source.Status) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_FlexibleServers_Configuration_STATUS() to populate field Status") + } + configuration.Status = status + + // No error + return nil +} + +// AssignProperties_To_FlexibleServersConfiguration populates the provided destination FlexibleServersConfiguration from our FlexibleServersConfiguration +func (configuration *FlexibleServersConfiguration) AssignProperties_To_FlexibleServersConfiguration(destination *v20230601ps.FlexibleServersConfiguration) error { + + // ObjectMeta + destination.ObjectMeta = *configuration.ObjectMeta.DeepCopy() + + // Spec + var spec v20230601ps.FlexibleServers_Configuration_Spec + err := configuration.Spec.AssignProperties_To_FlexibleServers_Configuration_Spec(&spec) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_FlexibleServers_Configuration_Spec() to populate field Spec") + } + destination.Spec = spec + + // Status + var status v20230601ps.FlexibleServers_Configuration_STATUS + err = configuration.Status.AssignProperties_To_FlexibleServers_Configuration_STATUS(&status) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_FlexibleServers_Configuration_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 (configuration *FlexibleServersConfiguration) OriginalGVK() *schema.GroupVersionKind { + return &schema.GroupVersionKind{ + Group: GroupVersion.Group, + Version: configuration.Spec.OriginalVersion(), + Kind: "FlexibleServersConfiguration", + } +} + +// +kubebuilder:object:root=true +// Generator information: +// - Generated from: /postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2023-06-01-preview/Configuration.json +// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/flexibleServers/{serverName}/configurations/{configurationName} +type FlexibleServersConfigurationList struct { + metav1.TypeMeta `json:",inline"` + metav1.ListMeta `json:"metadata,omitempty"` + Items []FlexibleServersConfiguration `json:"items"` +} + +type FlexibleServers_Configuration_Spec struct { + // +kubebuilder:validation:MinLength=1 + // +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"` + + // +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 dbforpostgresql.azure.com/FlexibleServer resource + Owner *genruntime.KnownResourceReference `group:"dbforpostgresql.azure.com" json:"owner,omitempty" kind:"FlexibleServer"` + + // Source: Source of the configuration. + Source *string `json:"source,omitempty"` + + // Value: Value of the configuration. + Value *string `json:"value,omitempty"` +} + +var _ genruntime.ARMTransformer = &FlexibleServers_Configuration_Spec{} + +// ConvertToARM converts from a Kubernetes CRD object to an ARM object +func (configuration *FlexibleServers_Configuration_Spec) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) { + if configuration == nil { + return nil, nil + } + result := &FlexibleServers_Configuration_Spec_ARM{} + + // Set property "Name": + result.Name = resolved.Name + + // Set property "Properties": + if configuration.Source != nil || configuration.Value != nil { + result.Properties = &ConfigurationProperties_ARM{} + } + if configuration.Source != nil { + source := *configuration.Source + result.Properties.Source = &source + } + if configuration.Value != nil { + value := *configuration.Value + result.Properties.Value = &value + } + return result, nil +} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (configuration *FlexibleServers_Configuration_Spec) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &FlexibleServers_Configuration_Spec_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (configuration *FlexibleServers_Configuration_Spec) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(FlexibleServers_Configuration_Spec_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected FlexibleServers_Configuration_Spec_ARM, got %T", armInput) + } + + // Set property "AzureName": + configuration.SetAzureName(genruntime.ExtractKubernetesResourceNameFromARMName(typedInput.Name)) + + // Set property "Owner": + configuration.Owner = &genruntime.KnownResourceReference{ + Name: owner.Name, + ARMID: owner.ARMID, + } + + // Set property "Source": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Source != nil { + source := *typedInput.Properties.Source + configuration.Source = &source + } + } + + // Set property "Value": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Value != nil { + value := *typedInput.Properties.Value + configuration.Value = &value + } + } + + // No error + return nil +} + +var _ genruntime.ConvertibleSpec = &FlexibleServers_Configuration_Spec{} + +// ConvertSpecFrom populates our FlexibleServers_Configuration_Spec from the provided source +func (configuration *FlexibleServers_Configuration_Spec) ConvertSpecFrom(source genruntime.ConvertibleSpec) error { + src, ok := source.(*v20230601ps.FlexibleServers_Configuration_Spec) + if ok { + // Populate our instance from source + return configuration.AssignProperties_From_FlexibleServers_Configuration_Spec(src) + } + + // Convert to an intermediate form + src = &v20230601ps.FlexibleServers_Configuration_Spec{} + err := src.ConvertSpecFrom(source) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertSpecFrom()") + } + + // Update our instance from src + err = configuration.AssignProperties_From_FlexibleServers_Configuration_Spec(src) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertSpecFrom()") + } + + return nil +} + +// ConvertSpecTo populates the provided destination from our FlexibleServers_Configuration_Spec +func (configuration *FlexibleServers_Configuration_Spec) ConvertSpecTo(destination genruntime.ConvertibleSpec) error { + dst, ok := destination.(*v20230601ps.FlexibleServers_Configuration_Spec) + if ok { + // Populate destination from our instance + return configuration.AssignProperties_To_FlexibleServers_Configuration_Spec(dst) + } + + // Convert to an intermediate form + dst = &v20230601ps.FlexibleServers_Configuration_Spec{} + err := configuration.AssignProperties_To_FlexibleServers_Configuration_Spec(dst) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertSpecTo()") + } + + // Update dst from our instance + err = dst.ConvertSpecTo(destination) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertSpecTo()") + } + + return nil +} + +// AssignProperties_From_FlexibleServers_Configuration_Spec populates our FlexibleServers_Configuration_Spec from the provided source FlexibleServers_Configuration_Spec +func (configuration *FlexibleServers_Configuration_Spec) AssignProperties_From_FlexibleServers_Configuration_Spec(source *v20230601ps.FlexibleServers_Configuration_Spec) error { + + // AzureName + configuration.AzureName = source.AzureName + + // Owner + if source.Owner != nil { + owner := source.Owner.Copy() + configuration.Owner = &owner + } else { + configuration.Owner = nil + } + + // Source + configuration.Source = genruntime.ClonePointerToString(source.Source) + + // Value + configuration.Value = genruntime.ClonePointerToString(source.Value) + + // No error + return nil +} + +// AssignProperties_To_FlexibleServers_Configuration_Spec populates the provided destination FlexibleServers_Configuration_Spec from our FlexibleServers_Configuration_Spec +func (configuration *FlexibleServers_Configuration_Spec) AssignProperties_To_FlexibleServers_Configuration_Spec(destination *v20230601ps.FlexibleServers_Configuration_Spec) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // AzureName + destination.AzureName = configuration.AzureName + + // OriginalVersion + destination.OriginalVersion = configuration.OriginalVersion() + + // Owner + if configuration.Owner != nil { + owner := configuration.Owner.Copy() + destination.Owner = &owner + } else { + destination.Owner = nil + } + + // Source + destination.Source = genruntime.ClonePointerToString(configuration.Source) + + // Value + destination.Value = genruntime.ClonePointerToString(configuration.Value) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// OriginalVersion returns the original API version used to create the resource. +func (configuration *FlexibleServers_Configuration_Spec) OriginalVersion() string { + return GroupVersion.Version +} + +// SetAzureName sets the Azure name of the resource +func (configuration *FlexibleServers_Configuration_Spec) SetAzureName(azureName string) { + configuration.AzureName = azureName +} + +type FlexibleServers_Configuration_STATUS struct { + // AllowedValues: Allowed values of the configuration. + AllowedValues *string `json:"allowedValues,omitempty"` + + // Conditions: The observed state of the resource + Conditions []conditions.Condition `json:"conditions,omitempty"` + + // DataType: Data type of the configuration. + DataType *ConfigurationProperties_DataType_STATUS `json:"dataType,omitempty"` + + // DefaultValue: Default value of the configuration. + DefaultValue *string `json:"defaultValue,omitempty"` + + // Description: Description of the configuration. + Description *string `json:"description,omitempty"` + + // DocumentationLink: Configuration documentation link. + DocumentationLink *string `json:"documentationLink,omitempty"` + + // Id: Fully qualified resource ID for the resource. E.g. + // "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" + Id *string `json:"id,omitempty"` + + // IsConfigPendingRestart: Configuration is pending restart or not. + IsConfigPendingRestart *bool `json:"isConfigPendingRestart,omitempty"` + + // IsDynamicConfig: Configuration dynamic or static. + IsDynamicConfig *bool `json:"isDynamicConfig,omitempty"` + + // IsReadOnly: Configuration read-only or not. + IsReadOnly *bool `json:"isReadOnly,omitempty"` + + // Name: The name of the resource + Name *string `json:"name,omitempty"` + + // Source: Source of the configuration. + Source *string `json:"source,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"` + + // Unit: Configuration unit. + Unit *string `json:"unit,omitempty"` + + // Value: Value of the configuration. + Value *string `json:"value,omitempty"` +} + +var _ genruntime.ConvertibleStatus = &FlexibleServers_Configuration_STATUS{} + +// ConvertStatusFrom populates our FlexibleServers_Configuration_STATUS from the provided source +func (configuration *FlexibleServers_Configuration_STATUS) ConvertStatusFrom(source genruntime.ConvertibleStatus) error { + src, ok := source.(*v20230601ps.FlexibleServers_Configuration_STATUS) + if ok { + // Populate our instance from source + return configuration.AssignProperties_From_FlexibleServers_Configuration_STATUS(src) + } + + // Convert to an intermediate form + src = &v20230601ps.FlexibleServers_Configuration_STATUS{} + err := src.ConvertStatusFrom(source) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertStatusFrom()") + } + + // Update our instance from src + err = configuration.AssignProperties_From_FlexibleServers_Configuration_STATUS(src) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertStatusFrom()") + } + + return nil +} + +// ConvertStatusTo populates the provided destination from our FlexibleServers_Configuration_STATUS +func (configuration *FlexibleServers_Configuration_STATUS) ConvertStatusTo(destination genruntime.ConvertibleStatus) error { + dst, ok := destination.(*v20230601ps.FlexibleServers_Configuration_STATUS) + if ok { + // Populate destination from our instance + return configuration.AssignProperties_To_FlexibleServers_Configuration_STATUS(dst) + } + + // Convert to an intermediate form + dst = &v20230601ps.FlexibleServers_Configuration_STATUS{} + err := configuration.AssignProperties_To_FlexibleServers_Configuration_STATUS(dst) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertStatusTo()") + } + + // Update dst from our instance + err = dst.ConvertStatusTo(destination) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertStatusTo()") + } + + return nil +} + +var _ genruntime.FromARMConverter = &FlexibleServers_Configuration_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (configuration *FlexibleServers_Configuration_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &FlexibleServers_Configuration_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (configuration *FlexibleServers_Configuration_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(FlexibleServers_Configuration_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected FlexibleServers_Configuration_STATUS_ARM, got %T", armInput) + } + + // Set property "AllowedValues": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.AllowedValues != nil { + allowedValues := *typedInput.Properties.AllowedValues + configuration.AllowedValues = &allowedValues + } + } + + // no assignment for property "Conditions" + + // Set property "DataType": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.DataType != nil { + dataType := *typedInput.Properties.DataType + configuration.DataType = &dataType + } + } + + // Set property "DefaultValue": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.DefaultValue != nil { + defaultValue := *typedInput.Properties.DefaultValue + configuration.DefaultValue = &defaultValue + } + } + + // Set property "Description": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Description != nil { + description := *typedInput.Properties.Description + configuration.Description = &description + } + } + + // Set property "DocumentationLink": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.DocumentationLink != nil { + documentationLink := *typedInput.Properties.DocumentationLink + configuration.DocumentationLink = &documentationLink + } + } + + // Set property "Id": + if typedInput.Id != nil { + id := *typedInput.Id + configuration.Id = &id + } + + // Set property "IsConfigPendingRestart": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.IsConfigPendingRestart != nil { + isConfigPendingRestart := *typedInput.Properties.IsConfigPendingRestart + configuration.IsConfigPendingRestart = &isConfigPendingRestart + } + } + + // Set property "IsDynamicConfig": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.IsDynamicConfig != nil { + isDynamicConfig := *typedInput.Properties.IsDynamicConfig + configuration.IsDynamicConfig = &isDynamicConfig + } + } + + // Set property "IsReadOnly": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.IsReadOnly != nil { + isReadOnly := *typedInput.Properties.IsReadOnly + configuration.IsReadOnly = &isReadOnly + } + } + + // Set property "Name": + if typedInput.Name != nil { + name := *typedInput.Name + configuration.Name = &name + } + + // Set property "Source": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Source != nil { + source := *typedInput.Properties.Source + configuration.Source = &source + } + } + + // Set property "SystemData": + if typedInput.SystemData != nil { + var systemData1 SystemData_STATUS + err := systemData1.PopulateFromARM(owner, *typedInput.SystemData) + if err != nil { + return err + } + systemData := systemData1 + configuration.SystemData = &systemData + } + + // Set property "Type": + if typedInput.Type != nil { + typeVar := *typedInput.Type + configuration.Type = &typeVar + } + + // Set property "Unit": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Unit != nil { + unit := *typedInput.Properties.Unit + configuration.Unit = &unit + } + } + + // Set property "Value": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Value != nil { + value := *typedInput.Properties.Value + configuration.Value = &value + } + } + + // No error + return nil +} + +// AssignProperties_From_FlexibleServers_Configuration_STATUS populates our FlexibleServers_Configuration_STATUS from the provided source FlexibleServers_Configuration_STATUS +func (configuration *FlexibleServers_Configuration_STATUS) AssignProperties_From_FlexibleServers_Configuration_STATUS(source *v20230601ps.FlexibleServers_Configuration_STATUS) error { + + // AllowedValues + configuration.AllowedValues = genruntime.ClonePointerToString(source.AllowedValues) + + // Conditions + configuration.Conditions = genruntime.CloneSliceOfCondition(source.Conditions) + + // DataType + if source.DataType != nil { + dataType := ConfigurationProperties_DataType_STATUS(*source.DataType) + configuration.DataType = &dataType + } else { + configuration.DataType = nil + } + + // DefaultValue + configuration.DefaultValue = genruntime.ClonePointerToString(source.DefaultValue) + + // Description + configuration.Description = genruntime.ClonePointerToString(source.Description) + + // DocumentationLink + configuration.DocumentationLink = genruntime.ClonePointerToString(source.DocumentationLink) + + // Id + configuration.Id = genruntime.ClonePointerToString(source.Id) + + // IsConfigPendingRestart + if source.IsConfigPendingRestart != nil { + isConfigPendingRestart := *source.IsConfigPendingRestart + configuration.IsConfigPendingRestart = &isConfigPendingRestart + } else { + configuration.IsConfigPendingRestart = nil + } + + // IsDynamicConfig + if source.IsDynamicConfig != nil { + isDynamicConfig := *source.IsDynamicConfig + configuration.IsDynamicConfig = &isDynamicConfig + } else { + configuration.IsDynamicConfig = nil + } + + // IsReadOnly + if source.IsReadOnly != nil { + isReadOnly := *source.IsReadOnly + configuration.IsReadOnly = &isReadOnly + } else { + configuration.IsReadOnly = nil + } + + // Name + configuration.Name = genruntime.ClonePointerToString(source.Name) + + // Source + configuration.Source = genruntime.ClonePointerToString(source.Source) + + // SystemData + if source.SystemData != nil { + var systemDatum SystemData_STATUS + err := systemDatum.AssignProperties_From_SystemData_STATUS(source.SystemData) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_SystemData_STATUS() to populate field SystemData") + } + configuration.SystemData = &systemDatum + } else { + configuration.SystemData = nil + } + + // Type + configuration.Type = genruntime.ClonePointerToString(source.Type) + + // Unit + configuration.Unit = genruntime.ClonePointerToString(source.Unit) + + // Value + configuration.Value = genruntime.ClonePointerToString(source.Value) + + // No error + return nil +} + +// AssignProperties_To_FlexibleServers_Configuration_STATUS populates the provided destination FlexibleServers_Configuration_STATUS from our FlexibleServers_Configuration_STATUS +func (configuration *FlexibleServers_Configuration_STATUS) AssignProperties_To_FlexibleServers_Configuration_STATUS(destination *v20230601ps.FlexibleServers_Configuration_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // AllowedValues + destination.AllowedValues = genruntime.ClonePointerToString(configuration.AllowedValues) + + // Conditions + destination.Conditions = genruntime.CloneSliceOfCondition(configuration.Conditions) + + // DataType + if configuration.DataType != nil { + dataType := string(*configuration.DataType) + destination.DataType = &dataType + } else { + destination.DataType = nil + } + + // DefaultValue + destination.DefaultValue = genruntime.ClonePointerToString(configuration.DefaultValue) + + // Description + destination.Description = genruntime.ClonePointerToString(configuration.Description) + + // DocumentationLink + destination.DocumentationLink = genruntime.ClonePointerToString(configuration.DocumentationLink) + + // Id + destination.Id = genruntime.ClonePointerToString(configuration.Id) + + // IsConfigPendingRestart + if configuration.IsConfigPendingRestart != nil { + isConfigPendingRestart := *configuration.IsConfigPendingRestart + destination.IsConfigPendingRestart = &isConfigPendingRestart + } else { + destination.IsConfigPendingRestart = nil + } + + // IsDynamicConfig + if configuration.IsDynamicConfig != nil { + isDynamicConfig := *configuration.IsDynamicConfig + destination.IsDynamicConfig = &isDynamicConfig + } else { + destination.IsDynamicConfig = nil + } + + // IsReadOnly + if configuration.IsReadOnly != nil { + isReadOnly := *configuration.IsReadOnly + destination.IsReadOnly = &isReadOnly + } else { + destination.IsReadOnly = nil + } + + // Name + destination.Name = genruntime.ClonePointerToString(configuration.Name) + + // Source + destination.Source = genruntime.ClonePointerToString(configuration.Source) + + // SystemData + if configuration.SystemData != nil { + var systemDatum v20230601ps.SystemData_STATUS + err := configuration.SystemData.AssignProperties_To_SystemData_STATUS(&systemDatum) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_SystemData_STATUS() to populate field SystemData") + } + destination.SystemData = &systemDatum + } else { + destination.SystemData = nil + } + + // Type + destination.Type = genruntime.ClonePointerToString(configuration.Type) + + // Unit + destination.Unit = genruntime.ClonePointerToString(configuration.Unit) + + // Value + destination.Value = genruntime.ClonePointerToString(configuration.Value) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +type ConfigurationProperties_DataType_STATUS string + +const ( + ConfigurationProperties_DataType_STATUS_Boolean = ConfigurationProperties_DataType_STATUS("Boolean") + ConfigurationProperties_DataType_STATUS_Enumeration = ConfigurationProperties_DataType_STATUS("Enumeration") + ConfigurationProperties_DataType_STATUS_Integer = ConfigurationProperties_DataType_STATUS("Integer") + ConfigurationProperties_DataType_STATUS_Numeric = ConfigurationProperties_DataType_STATUS("Numeric") +) + +func init() { + SchemeBuilder.Register(&FlexibleServersConfiguration{}, &FlexibleServersConfigurationList{}) +} diff --git a/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_configuration_types_gen_test.go b/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_configuration_types_gen_test.go new file mode 100644 index 00000000000..9620c9e118d --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_configuration_types_gen_test.go @@ -0,0 +1,406 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20230601preview + +import ( + "encoding/json" + v20221201s "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20221201/storage" + v20230601ps "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20230601preview/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_FlexibleServersConfiguration_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 FlexibleServersConfiguration to hub returns original", + prop.ForAll(RunResourceConversionTestForFlexibleServersConfiguration, FlexibleServersConfigurationGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunResourceConversionTestForFlexibleServersConfiguration tests if a specific instance of FlexibleServersConfiguration round trips to the hub storage version and back losslessly +func RunResourceConversionTestForFlexibleServersConfiguration(subject FlexibleServersConfiguration) string { + // Copy subject to make sure conversion doesn't modify it + copied := subject.DeepCopy() + + // Convert to our hub version + var hub v20221201s.FlexibleServersConfiguration + err := copied.ConvertTo(&hub) + if err != nil { + return err.Error() + } + + // Convert from our hub version + var actual FlexibleServersConfiguration + 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_FlexibleServersConfiguration_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from FlexibleServersConfiguration to FlexibleServersConfiguration via AssignProperties_To_FlexibleServersConfiguration & AssignProperties_From_FlexibleServersConfiguration returns original", + prop.ForAll(RunPropertyAssignmentTestForFlexibleServersConfiguration, FlexibleServersConfigurationGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForFlexibleServersConfiguration tests if a specific instance of FlexibleServersConfiguration can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForFlexibleServersConfiguration(subject FlexibleServersConfiguration) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20230601ps.FlexibleServersConfiguration + err := copied.AssignProperties_To_FlexibleServersConfiguration(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual FlexibleServersConfiguration + err = actual.AssignProperties_From_FlexibleServersConfiguration(&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_FlexibleServersConfiguration_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 FlexibleServersConfiguration via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServersConfiguration, FlexibleServersConfigurationGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServersConfiguration runs a test to see if a specific instance of FlexibleServersConfiguration round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServersConfiguration(subject FlexibleServersConfiguration) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServersConfiguration + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of FlexibleServersConfiguration instances for property testing - lazily instantiated by +// FlexibleServersConfigurationGenerator() +var flexibleServersConfigurationGenerator gopter.Gen + +// FlexibleServersConfigurationGenerator returns a generator of FlexibleServersConfiguration instances for property testing. +func FlexibleServersConfigurationGenerator() gopter.Gen { + if flexibleServersConfigurationGenerator != nil { + return flexibleServersConfigurationGenerator + } + + generators := make(map[string]gopter.Gen) + AddRelatedPropertyGeneratorsForFlexibleServersConfiguration(generators) + flexibleServersConfigurationGenerator = gen.Struct(reflect.TypeOf(FlexibleServersConfiguration{}), generators) + + return flexibleServersConfigurationGenerator +} + +// AddRelatedPropertyGeneratorsForFlexibleServersConfiguration is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForFlexibleServersConfiguration(gens map[string]gopter.Gen) { + gens["Spec"] = FlexibleServers_Configuration_SpecGenerator() + gens["Status"] = FlexibleServers_Configuration_STATUSGenerator() +} + +func Test_FlexibleServers_Configuration_Spec_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from FlexibleServers_Configuration_Spec to FlexibleServers_Configuration_Spec via AssignProperties_To_FlexibleServers_Configuration_Spec & AssignProperties_From_FlexibleServers_Configuration_Spec returns original", + prop.ForAll(RunPropertyAssignmentTestForFlexibleServers_Configuration_Spec, FlexibleServers_Configuration_SpecGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForFlexibleServers_Configuration_Spec tests if a specific instance of FlexibleServers_Configuration_Spec can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForFlexibleServers_Configuration_Spec(subject FlexibleServers_Configuration_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 v20230601ps.FlexibleServers_Configuration_Spec + err := copied.AssignProperties_To_FlexibleServers_Configuration_Spec(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual FlexibleServers_Configuration_Spec + err = actual.AssignProperties_From_FlexibleServers_Configuration_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_FlexibleServers_Configuration_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 FlexibleServers_Configuration_Spec via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServers_Configuration_Spec, FlexibleServers_Configuration_SpecGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServers_Configuration_Spec runs a test to see if a specific instance of FlexibleServers_Configuration_Spec round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServers_Configuration_Spec(subject FlexibleServers_Configuration_Spec) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServers_Configuration_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 FlexibleServers_Configuration_Spec instances for property testing - lazily instantiated by +// FlexibleServers_Configuration_SpecGenerator() +var flexibleServers_Configuration_SpecGenerator gopter.Gen + +// FlexibleServers_Configuration_SpecGenerator returns a generator of FlexibleServers_Configuration_Spec instances for property testing. +func FlexibleServers_Configuration_SpecGenerator() gopter.Gen { + if flexibleServers_Configuration_SpecGenerator != nil { + return flexibleServers_Configuration_SpecGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServers_Configuration_Spec(generators) + flexibleServers_Configuration_SpecGenerator = gen.Struct(reflect.TypeOf(FlexibleServers_Configuration_Spec{}), generators) + + return flexibleServers_Configuration_SpecGenerator +} + +// AddIndependentPropertyGeneratorsForFlexibleServers_Configuration_Spec is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForFlexibleServers_Configuration_Spec(gens map[string]gopter.Gen) { + gens["AzureName"] = gen.AlphaString() + gens["Source"] = gen.PtrOf(gen.AlphaString()) + gens["Value"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_FlexibleServers_Configuration_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from FlexibleServers_Configuration_STATUS to FlexibleServers_Configuration_STATUS via AssignProperties_To_FlexibleServers_Configuration_STATUS & AssignProperties_From_FlexibleServers_Configuration_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForFlexibleServers_Configuration_STATUS, FlexibleServers_Configuration_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForFlexibleServers_Configuration_STATUS tests if a specific instance of FlexibleServers_Configuration_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForFlexibleServers_Configuration_STATUS(subject FlexibleServers_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 v20230601ps.FlexibleServers_Configuration_STATUS + err := copied.AssignProperties_To_FlexibleServers_Configuration_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual FlexibleServers_Configuration_STATUS + err = actual.AssignProperties_From_FlexibleServers_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_FlexibleServers_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 FlexibleServers_Configuration_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServers_Configuration_STATUS, FlexibleServers_Configuration_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServers_Configuration_STATUS runs a test to see if a specific instance of FlexibleServers_Configuration_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServers_Configuration_STATUS(subject FlexibleServers_Configuration_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServers_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 FlexibleServers_Configuration_STATUS instances for property testing - lazily instantiated by +// FlexibleServers_Configuration_STATUSGenerator() +var flexibleServers_Configuration_STATUSGenerator gopter.Gen + +// FlexibleServers_Configuration_STATUSGenerator returns a generator of FlexibleServers_Configuration_STATUS instances for property testing. +// We first initialize flexibleServers_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 FlexibleServers_Configuration_STATUSGenerator() gopter.Gen { + if flexibleServers_Configuration_STATUSGenerator != nil { + return flexibleServers_Configuration_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServers_Configuration_STATUS(generators) + flexibleServers_Configuration_STATUSGenerator = gen.Struct(reflect.TypeOf(FlexibleServers_Configuration_STATUS{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServers_Configuration_STATUS(generators) + AddRelatedPropertyGeneratorsForFlexibleServers_Configuration_STATUS(generators) + flexibleServers_Configuration_STATUSGenerator = gen.Struct(reflect.TypeOf(FlexibleServers_Configuration_STATUS{}), generators) + + return flexibleServers_Configuration_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForFlexibleServers_Configuration_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForFlexibleServers_Configuration_STATUS(gens map[string]gopter.Gen) { + gens["AllowedValues"] = gen.PtrOf(gen.AlphaString()) + gens["DataType"] = gen.PtrOf(gen.OneConstOf( + ConfigurationProperties_DataType_STATUS_Boolean, + ConfigurationProperties_DataType_STATUS_Enumeration, + ConfigurationProperties_DataType_STATUS_Integer, + ConfigurationProperties_DataType_STATUS_Numeric)) + gens["DefaultValue"] = gen.PtrOf(gen.AlphaString()) + gens["Description"] = gen.PtrOf(gen.AlphaString()) + gens["DocumentationLink"] = gen.PtrOf(gen.AlphaString()) + gens["Id"] = gen.PtrOf(gen.AlphaString()) + gens["IsConfigPendingRestart"] = gen.PtrOf(gen.Bool()) + gens["IsDynamicConfig"] = gen.PtrOf(gen.Bool()) + gens["IsReadOnly"] = gen.PtrOf(gen.Bool()) + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["Source"] = gen.PtrOf(gen.AlphaString()) + gens["Type"] = gen.PtrOf(gen.AlphaString()) + gens["Unit"] = gen.PtrOf(gen.AlphaString()) + gens["Value"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForFlexibleServers_Configuration_STATUS is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForFlexibleServers_Configuration_STATUS(gens map[string]gopter.Gen) { + gens["SystemData"] = gen.PtrOf(SystemData_STATUSGenerator()) +} diff --git a/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_database_spec_arm_types_gen.go b/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_database_spec_arm_types_gen.go new file mode 100644 index 00000000000..02a2aa8cd4b --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_database_spec_arm_types_gen.go @@ -0,0 +1,39 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20230601preview + +import "github.com/Azure/azure-service-operator/v2/pkg/genruntime" + +type FlexibleServers_Database_Spec_ARM struct { + Name string `json:"name,omitempty"` + + // Properties: The properties of a database. + Properties *DatabaseProperties_ARM `json:"properties,omitempty"` +} + +var _ genruntime.ARMResourceSpec = &FlexibleServers_Database_Spec_ARM{} + +// GetAPIVersion returns the ARM API version of the resource. This is always "2023-06-01-preview" +func (database FlexibleServers_Database_Spec_ARM) GetAPIVersion() string { + return string(APIVersion_Value) +} + +// GetName returns the Name of the resource +func (database *FlexibleServers_Database_Spec_ARM) GetName() string { + return database.Name +} + +// GetType returns the ARM Type of the resource. This is always "Microsoft.DBforPostgreSQL/flexibleServers/databases" +func (database *FlexibleServers_Database_Spec_ARM) GetType() string { + return "Microsoft.DBforPostgreSQL/flexibleServers/databases" +} + +// The properties of a database. +type DatabaseProperties_ARM struct { + // Charset: The charset of the database. + Charset *string `json:"charset,omitempty"` + + // Collation: The collation of the database. + Collation *string `json:"collation,omitempty"` +} diff --git a/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_database_spec_arm_types_gen_test.go b/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_database_spec_arm_types_gen_test.go new file mode 100644 index 00000000000..5390001ed54 --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_database_spec_arm_types_gen_test.go @@ -0,0 +1,155 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20230601preview + +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_FlexibleServers_Database_Spec_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of FlexibleServers_Database_Spec_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServers_Database_Spec_ARM, FlexibleServers_Database_Spec_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServers_Database_Spec_ARM runs a test to see if a specific instance of FlexibleServers_Database_Spec_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServers_Database_Spec_ARM(subject FlexibleServers_Database_Spec_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServers_Database_Spec_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of FlexibleServers_Database_Spec_ARM instances for property testing - lazily instantiated by +// FlexibleServers_Database_Spec_ARMGenerator() +var flexibleServers_Database_Spec_ARMGenerator gopter.Gen + +// FlexibleServers_Database_Spec_ARMGenerator returns a generator of FlexibleServers_Database_Spec_ARM instances for property testing. +// We first initialize flexibleServers_Database_Spec_ARMGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func FlexibleServers_Database_Spec_ARMGenerator() gopter.Gen { + if flexibleServers_Database_Spec_ARMGenerator != nil { + return flexibleServers_Database_Spec_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServers_Database_Spec_ARM(generators) + flexibleServers_Database_Spec_ARMGenerator = gen.Struct(reflect.TypeOf(FlexibleServers_Database_Spec_ARM{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServers_Database_Spec_ARM(generators) + AddRelatedPropertyGeneratorsForFlexibleServers_Database_Spec_ARM(generators) + flexibleServers_Database_Spec_ARMGenerator = gen.Struct(reflect.TypeOf(FlexibleServers_Database_Spec_ARM{}), generators) + + return flexibleServers_Database_Spec_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForFlexibleServers_Database_Spec_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForFlexibleServers_Database_Spec_ARM(gens map[string]gopter.Gen) { + gens["Name"] = gen.AlphaString() +} + +// AddRelatedPropertyGeneratorsForFlexibleServers_Database_Spec_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForFlexibleServers_Database_Spec_ARM(gens map[string]gopter.Gen) { + gens["Properties"] = gen.PtrOf(DatabaseProperties_ARMGenerator()) +} + +func Test_DatabaseProperties_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of DatabaseProperties_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForDatabaseProperties_ARM, DatabaseProperties_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForDatabaseProperties_ARM runs a test to see if a specific instance of DatabaseProperties_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForDatabaseProperties_ARM(subject DatabaseProperties_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual DatabaseProperties_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of DatabaseProperties_ARM instances for property testing - lazily instantiated by +// DatabaseProperties_ARMGenerator() +var databaseProperties_ARMGenerator gopter.Gen + +// DatabaseProperties_ARMGenerator returns a generator of DatabaseProperties_ARM instances for property testing. +func DatabaseProperties_ARMGenerator() gopter.Gen { + if databaseProperties_ARMGenerator != nil { + return databaseProperties_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForDatabaseProperties_ARM(generators) + databaseProperties_ARMGenerator = gen.Struct(reflect.TypeOf(DatabaseProperties_ARM{}), generators) + + return databaseProperties_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForDatabaseProperties_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForDatabaseProperties_ARM(gens map[string]gopter.Gen) { + gens["Charset"] = gen.PtrOf(gen.AlphaString()) + gens["Collation"] = gen.PtrOf(gen.AlphaString()) +} diff --git a/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_database_status_arm_types_gen.go b/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_database_status_arm_types_gen.go new file mode 100644 index 00000000000..70da19c6f38 --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_database_status_arm_types_gen.go @@ -0,0 +1,31 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20230601preview + +type FlexibleServers_Database_STATUS_ARM struct { + // Id: Fully qualified resource ID for the resource. E.g. + // "/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: The properties of a database. + Properties *DatabaseProperties_STATUS_ARM `json:"properties,omitempty"` + + // SystemData: Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData *SystemData_STATUS_ARM `json:"systemData,omitempty"` + + // Type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string `json:"type,omitempty"` +} + +// The properties of a database. +type DatabaseProperties_STATUS_ARM struct { + // Charset: The charset of the database. + Charset *string `json:"charset,omitempty"` + + // Collation: The collation of the database. + Collation *string `json:"collation,omitempty"` +} diff --git a/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_database_status_arm_types_gen_test.go b/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_database_status_arm_types_gen_test.go new file mode 100644 index 00000000000..7a6162ea331 --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_database_status_arm_types_gen_test.go @@ -0,0 +1,158 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20230601preview + +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_FlexibleServers_Database_STATUS_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of FlexibleServers_Database_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServers_Database_STATUS_ARM, FlexibleServers_Database_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServers_Database_STATUS_ARM runs a test to see if a specific instance of FlexibleServers_Database_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServers_Database_STATUS_ARM(subject FlexibleServers_Database_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServers_Database_STATUS_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of FlexibleServers_Database_STATUS_ARM instances for property testing - lazily instantiated by +// FlexibleServers_Database_STATUS_ARMGenerator() +var flexibleServers_Database_STATUS_ARMGenerator gopter.Gen + +// FlexibleServers_Database_STATUS_ARMGenerator returns a generator of FlexibleServers_Database_STATUS_ARM instances for property testing. +// We first initialize flexibleServers_Database_STATUS_ARMGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func FlexibleServers_Database_STATUS_ARMGenerator() gopter.Gen { + if flexibleServers_Database_STATUS_ARMGenerator != nil { + return flexibleServers_Database_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServers_Database_STATUS_ARM(generators) + flexibleServers_Database_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(FlexibleServers_Database_STATUS_ARM{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServers_Database_STATUS_ARM(generators) + AddRelatedPropertyGeneratorsForFlexibleServers_Database_STATUS_ARM(generators) + flexibleServers_Database_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(FlexibleServers_Database_STATUS_ARM{}), generators) + + return flexibleServers_Database_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForFlexibleServers_Database_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForFlexibleServers_Database_STATUS_ARM(gens map[string]gopter.Gen) { + gens["Id"] = gen.PtrOf(gen.AlphaString()) + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["Type"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForFlexibleServers_Database_STATUS_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForFlexibleServers_Database_STATUS_ARM(gens map[string]gopter.Gen) { + gens["Properties"] = gen.PtrOf(DatabaseProperties_STATUS_ARMGenerator()) + gens["SystemData"] = gen.PtrOf(SystemData_STATUS_ARMGenerator()) +} + +func Test_DatabaseProperties_STATUS_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of DatabaseProperties_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForDatabaseProperties_STATUS_ARM, DatabaseProperties_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForDatabaseProperties_STATUS_ARM runs a test to see if a specific instance of DatabaseProperties_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForDatabaseProperties_STATUS_ARM(subject DatabaseProperties_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual DatabaseProperties_STATUS_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of DatabaseProperties_STATUS_ARM instances for property testing - lazily instantiated by +// DatabaseProperties_STATUS_ARMGenerator() +var databaseProperties_STATUS_ARMGenerator gopter.Gen + +// DatabaseProperties_STATUS_ARMGenerator returns a generator of DatabaseProperties_STATUS_ARM instances for property testing. +func DatabaseProperties_STATUS_ARMGenerator() gopter.Gen { + if databaseProperties_STATUS_ARMGenerator != nil { + return databaseProperties_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForDatabaseProperties_STATUS_ARM(generators) + databaseProperties_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(DatabaseProperties_STATUS_ARM{}), generators) + + return databaseProperties_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForDatabaseProperties_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForDatabaseProperties_STATUS_ARM(gens map[string]gopter.Gen) { + gens["Charset"] = gen.PtrOf(gen.AlphaString()) + gens["Collation"] = gen.PtrOf(gen.AlphaString()) +} diff --git a/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_database_types_gen.go b/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_database_types_gen.go new file mode 100644 index 00000000000..2c94ed687d7 --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_database_types_gen.go @@ -0,0 +1,788 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20230601preview + +import ( + "fmt" + v20230601ps "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20230601preview/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/pkg/errors" + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/runtime" + "k8s.io/apimachinery/pkg/runtime/schema" + "sigs.k8s.io/controller-runtime/pkg/conversion" + "sigs.k8s.io/controller-runtime/pkg/webhook/admission" +) + +// +kubebuilder:object:root=true +// +kubebuilder:subresource:status +// +kubebuilder:printcolumn:name="Ready",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +// +kubebuilder:printcolumn:name="Severity",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].severity" +// +kubebuilder:printcolumn:name="Reason",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].reason" +// +kubebuilder:printcolumn:name="Message",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].message" +// Generator information: +// - Generated from: /postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2023-06-01-preview/Databases.json +// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/flexibleServers/{serverName}/databases/{databaseName} +type FlexibleServersDatabase struct { + metav1.TypeMeta `json:",inline"` + metav1.ObjectMeta `json:"metadata,omitempty"` + Spec FlexibleServers_Database_Spec `json:"spec,omitempty"` + Status FlexibleServers_Database_STATUS `json:"status,omitempty"` +} + +var _ conditions.Conditioner = &FlexibleServersDatabase{} + +// GetConditions returns the conditions of the resource +func (database *FlexibleServersDatabase) GetConditions() conditions.Conditions { + return database.Status.Conditions +} + +// SetConditions sets the conditions on the resource status +func (database *FlexibleServersDatabase) SetConditions(conditions conditions.Conditions) { + database.Status.Conditions = conditions +} + +var _ conversion.Convertible = &FlexibleServersDatabase{} + +// ConvertFrom populates our FlexibleServersDatabase from the provided hub FlexibleServersDatabase +func (database *FlexibleServersDatabase) ConvertFrom(hub conversion.Hub) error { + // intermediate variable for conversion + var source v20230601ps.FlexibleServersDatabase + + err := source.ConvertFrom(hub) + if err != nil { + return errors.Wrap(err, "converting from hub to source") + } + + err = database.AssignProperties_From_FlexibleServersDatabase(&source) + if err != nil { + return errors.Wrap(err, "converting from source to database") + } + + return nil +} + +// ConvertTo populates the provided hub FlexibleServersDatabase from our FlexibleServersDatabase +func (database *FlexibleServersDatabase) ConvertTo(hub conversion.Hub) error { + // intermediate variable for conversion + var destination v20230601ps.FlexibleServersDatabase + err := database.AssignProperties_To_FlexibleServersDatabase(&destination) + if err != nil { + return errors.Wrap(err, "converting to destination from database") + } + err = destination.ConvertTo(hub) + if err != nil { + return errors.Wrap(err, "converting from destination to hub") + } + + return nil +} + +// +kubebuilder:webhook:path=/mutate-dbforpostgresql-azure-com-v1api20230601preview-flexibleserversdatabase,mutating=true,sideEffects=None,matchPolicy=Exact,failurePolicy=fail,groups=dbforpostgresql.azure.com,resources=flexibleserversdatabases,verbs=create;update,versions=v1api20230601preview,name=default.v1api20230601preview.flexibleserversdatabases.dbforpostgresql.azure.com,admissionReviewVersions=v1 + +var _ admission.Defaulter = &FlexibleServersDatabase{} + +// Default applies defaults to the FlexibleServersDatabase resource +func (database *FlexibleServersDatabase) Default() { + database.defaultImpl() + var temp any = database + if runtimeDefaulter, ok := temp.(genruntime.Defaulter); ok { + runtimeDefaulter.CustomDefault() + } +} + +// defaultAzureName defaults the Azure name of the resource to the Kubernetes name +func (database *FlexibleServersDatabase) defaultAzureName() { + if database.Spec.AzureName == "" { + database.Spec.AzureName = database.Name + } +} + +// defaultImpl applies the code generated defaults to the FlexibleServersDatabase resource +func (database *FlexibleServersDatabase) defaultImpl() { database.defaultAzureName() } + +var _ genruntime.KubernetesResource = &FlexibleServersDatabase{} + +// AzureName returns the Azure name of the resource +func (database *FlexibleServersDatabase) AzureName() string { + return database.Spec.AzureName +} + +// GetAPIVersion returns the ARM API version of the resource. This is always "2023-06-01-preview" +func (database FlexibleServersDatabase) GetAPIVersion() string { + return string(APIVersion_Value) +} + +// GetResourceScope returns the scope of the resource +func (database *FlexibleServersDatabase) GetResourceScope() genruntime.ResourceScope { + return genruntime.ResourceScopeResourceGroup +} + +// GetSpec returns the specification of this resource +func (database *FlexibleServersDatabase) GetSpec() genruntime.ConvertibleSpec { + return &database.Spec +} + +// GetStatus returns the status of this resource +func (database *FlexibleServersDatabase) GetStatus() genruntime.ConvertibleStatus { + return &database.Status +} + +// GetSupportedOperations returns the operations supported by the resource +func (database *FlexibleServersDatabase) GetSupportedOperations() []genruntime.ResourceOperation { + return []genruntime.ResourceOperation{ + genruntime.ResourceOperationDelete, + genruntime.ResourceOperationGet, + genruntime.ResourceOperationPut, + } +} + +// GetType returns the ARM Type of the resource. This is always "Microsoft.DBforPostgreSQL/flexibleServers/databases" +func (database *FlexibleServersDatabase) GetType() string { + return "Microsoft.DBforPostgreSQL/flexibleServers/databases" +} + +// NewEmptyStatus returns a new empty (blank) status +func (database *FlexibleServersDatabase) NewEmptyStatus() genruntime.ConvertibleStatus { + return &FlexibleServers_Database_STATUS{} +} + +// Owner returns the ResourceReference of the owner +func (database *FlexibleServersDatabase) Owner() *genruntime.ResourceReference { + group, kind := genruntime.LookupOwnerGroupKind(database.Spec) + return database.Spec.Owner.AsResourceReference(group, kind) +} + +// SetStatus sets the status of this resource +func (database *FlexibleServersDatabase) SetStatus(status genruntime.ConvertibleStatus) error { + // If we have exactly the right type of status, assign it + if st, ok := status.(*FlexibleServers_Database_STATUS); ok { + database.Status = *st + return nil + } + + // Convert status to required version + var st FlexibleServers_Database_STATUS + err := status.ConvertStatusTo(&st) + if err != nil { + return errors.Wrap(err, "failed to convert status") + } + + database.Status = st + return nil +} + +// +kubebuilder:webhook:path=/validate-dbforpostgresql-azure-com-v1api20230601preview-flexibleserversdatabase,mutating=false,sideEffects=None,matchPolicy=Exact,failurePolicy=fail,groups=dbforpostgresql.azure.com,resources=flexibleserversdatabases,verbs=create;update,versions=v1api20230601preview,name=validate.v1api20230601preview.flexibleserversdatabases.dbforpostgresql.azure.com,admissionReviewVersions=v1 + +var _ admission.Validator = &FlexibleServersDatabase{} + +// ValidateCreate validates the creation of the resource +func (database *FlexibleServersDatabase) ValidateCreate() (admission.Warnings, error) { + validations := database.createValidations() + var temp any = database + if runtimeValidator, ok := temp.(genruntime.Validator); ok { + validations = append(validations, runtimeValidator.CreateValidations()...) + } + return genruntime.ValidateCreate(validations) +} + +// ValidateDelete validates the deletion of the resource +func (database *FlexibleServersDatabase) ValidateDelete() (admission.Warnings, error) { + validations := database.deleteValidations() + var temp any = database + if runtimeValidator, ok := temp.(genruntime.Validator); ok { + validations = append(validations, runtimeValidator.DeleteValidations()...) + } + return genruntime.ValidateDelete(validations) +} + +// ValidateUpdate validates an update of the resource +func (database *FlexibleServersDatabase) ValidateUpdate(old runtime.Object) (admission.Warnings, error) { + validations := database.updateValidations() + var temp any = database + 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 (database *FlexibleServersDatabase) createValidations() []func() (admission.Warnings, error) { + return []func() (admission.Warnings, error){database.validateResourceReferences, database.validateOwnerReference} +} + +// deleteValidations validates the deletion of the resource +func (database *FlexibleServersDatabase) deleteValidations() []func() (admission.Warnings, error) { + return nil +} + +// updateValidations validates the update of the resource +func (database *FlexibleServersDatabase) updateValidations() []func(old runtime.Object) (admission.Warnings, error) { + return []func(old runtime.Object) (admission.Warnings, error){ + func(old runtime.Object) (admission.Warnings, error) { + return database.validateResourceReferences() + }, + database.validateWriteOnceProperties, + func(old runtime.Object) (admission.Warnings, error) { + return database.validateOwnerReference() + }, + } +} + +// validateOwnerReference validates the owner field +func (database *FlexibleServersDatabase) validateOwnerReference() (admission.Warnings, error) { + return genruntime.ValidateOwner(database) +} + +// validateResourceReferences validates all resource references +func (database *FlexibleServersDatabase) validateResourceReferences() (admission.Warnings, error) { + refs, err := reflecthelpers.FindResourceReferences(&database.Spec) + if err != nil { + return nil, err + } + return genruntime.ValidateResourceReferences(refs) +} + +// validateWriteOnceProperties validates all WriteOnce properties +func (database *FlexibleServersDatabase) validateWriteOnceProperties(old runtime.Object) (admission.Warnings, error) { + oldObj, ok := old.(*FlexibleServersDatabase) + if !ok { + return nil, nil + } + + return genruntime.ValidateWriteOnceProperties(oldObj, database) +} + +// AssignProperties_From_FlexibleServersDatabase populates our FlexibleServersDatabase from the provided source FlexibleServersDatabase +func (database *FlexibleServersDatabase) AssignProperties_From_FlexibleServersDatabase(source *v20230601ps.FlexibleServersDatabase) error { + + // ObjectMeta + database.ObjectMeta = *source.ObjectMeta.DeepCopy() + + // Spec + var spec FlexibleServers_Database_Spec + err := spec.AssignProperties_From_FlexibleServers_Database_Spec(&source.Spec) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_FlexibleServers_Database_Spec() to populate field Spec") + } + database.Spec = spec + + // Status + var status FlexibleServers_Database_STATUS + err = status.AssignProperties_From_FlexibleServers_Database_STATUS(&source.Status) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_FlexibleServers_Database_STATUS() to populate field Status") + } + database.Status = status + + // No error + return nil +} + +// AssignProperties_To_FlexibleServersDatabase populates the provided destination FlexibleServersDatabase from our FlexibleServersDatabase +func (database *FlexibleServersDatabase) AssignProperties_To_FlexibleServersDatabase(destination *v20230601ps.FlexibleServersDatabase) error { + + // ObjectMeta + destination.ObjectMeta = *database.ObjectMeta.DeepCopy() + + // Spec + var spec v20230601ps.FlexibleServers_Database_Spec + err := database.Spec.AssignProperties_To_FlexibleServers_Database_Spec(&spec) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_FlexibleServers_Database_Spec() to populate field Spec") + } + destination.Spec = spec + + // Status + var status v20230601ps.FlexibleServers_Database_STATUS + err = database.Status.AssignProperties_To_FlexibleServers_Database_STATUS(&status) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_FlexibleServers_Database_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 (database *FlexibleServersDatabase) OriginalGVK() *schema.GroupVersionKind { + return &schema.GroupVersionKind{ + Group: GroupVersion.Group, + Version: database.Spec.OriginalVersion(), + Kind: "FlexibleServersDatabase", + } +} + +// +kubebuilder:object:root=true +// Generator information: +// - Generated from: /postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2023-06-01-preview/Databases.json +// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/flexibleServers/{serverName}/databases/{databaseName} +type FlexibleServersDatabaseList struct { + metav1.TypeMeta `json:",inline"` + metav1.ListMeta `json:"metadata,omitempty"` + Items []FlexibleServersDatabase `json:"items"` +} + +type FlexibleServers_Database_Spec struct { + // +kubebuilder:validation:MinLength=1 + // +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"` + + // +kubebuilder:validation:Pattern="^[a-zA-Z]+\\w*$" + // Charset: The charset of the database. + Charset *string `json:"charset,omitempty"` + + // +kubebuilder:validation:Pattern="^[a-zA-Z\\-]+([. ]|\\w)*$" + // Collation: The collation of the database. + Collation *string `json:"collation,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 dbforpostgresql.azure.com/FlexibleServer resource + Owner *genruntime.KnownResourceReference `group:"dbforpostgresql.azure.com" json:"owner,omitempty" kind:"FlexibleServer"` +} + +var _ genruntime.ARMTransformer = &FlexibleServers_Database_Spec{} + +// ConvertToARM converts from a Kubernetes CRD object to an ARM object +func (database *FlexibleServers_Database_Spec) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) { + if database == nil { + return nil, nil + } + result := &FlexibleServers_Database_Spec_ARM{} + + // Set property "Name": + result.Name = resolved.Name + + // Set property "Properties": + if database.Charset != nil || database.Collation != nil { + result.Properties = &DatabaseProperties_ARM{} + } + if database.Charset != nil { + charset := *database.Charset + result.Properties.Charset = &charset + } + if database.Collation != nil { + collation := *database.Collation + result.Properties.Collation = &collation + } + return result, nil +} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (database *FlexibleServers_Database_Spec) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &FlexibleServers_Database_Spec_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (database *FlexibleServers_Database_Spec) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(FlexibleServers_Database_Spec_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected FlexibleServers_Database_Spec_ARM, got %T", armInput) + } + + // Set property "AzureName": + database.SetAzureName(genruntime.ExtractKubernetesResourceNameFromARMName(typedInput.Name)) + + // Set property "Charset": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Charset != nil { + charset := *typedInput.Properties.Charset + database.Charset = &charset + } + } + + // Set property "Collation": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Collation != nil { + collation := *typedInput.Properties.Collation + database.Collation = &collation + } + } + + // Set property "Owner": + database.Owner = &genruntime.KnownResourceReference{ + Name: owner.Name, + ARMID: owner.ARMID, + } + + // No error + return nil +} + +var _ genruntime.ConvertibleSpec = &FlexibleServers_Database_Spec{} + +// ConvertSpecFrom populates our FlexibleServers_Database_Spec from the provided source +func (database *FlexibleServers_Database_Spec) ConvertSpecFrom(source genruntime.ConvertibleSpec) error { + src, ok := source.(*v20230601ps.FlexibleServers_Database_Spec) + if ok { + // Populate our instance from source + return database.AssignProperties_From_FlexibleServers_Database_Spec(src) + } + + // Convert to an intermediate form + src = &v20230601ps.FlexibleServers_Database_Spec{} + err := src.ConvertSpecFrom(source) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertSpecFrom()") + } + + // Update our instance from src + err = database.AssignProperties_From_FlexibleServers_Database_Spec(src) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertSpecFrom()") + } + + return nil +} + +// ConvertSpecTo populates the provided destination from our FlexibleServers_Database_Spec +func (database *FlexibleServers_Database_Spec) ConvertSpecTo(destination genruntime.ConvertibleSpec) error { + dst, ok := destination.(*v20230601ps.FlexibleServers_Database_Spec) + if ok { + // Populate destination from our instance + return database.AssignProperties_To_FlexibleServers_Database_Spec(dst) + } + + // Convert to an intermediate form + dst = &v20230601ps.FlexibleServers_Database_Spec{} + err := database.AssignProperties_To_FlexibleServers_Database_Spec(dst) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertSpecTo()") + } + + // Update dst from our instance + err = dst.ConvertSpecTo(destination) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertSpecTo()") + } + + return nil +} + +// AssignProperties_From_FlexibleServers_Database_Spec populates our FlexibleServers_Database_Spec from the provided source FlexibleServers_Database_Spec +func (database *FlexibleServers_Database_Spec) AssignProperties_From_FlexibleServers_Database_Spec(source *v20230601ps.FlexibleServers_Database_Spec) error { + + // AzureName + database.AzureName = source.AzureName + + // Charset + if source.Charset != nil { + charset := *source.Charset + database.Charset = &charset + } else { + database.Charset = nil + } + + // Collation + if source.Collation != nil { + collation := *source.Collation + database.Collation = &collation + } else { + database.Collation = nil + } + + // Owner + if source.Owner != nil { + owner := source.Owner.Copy() + database.Owner = &owner + } else { + database.Owner = nil + } + + // No error + return nil +} + +// AssignProperties_To_FlexibleServers_Database_Spec populates the provided destination FlexibleServers_Database_Spec from our FlexibleServers_Database_Spec +func (database *FlexibleServers_Database_Spec) AssignProperties_To_FlexibleServers_Database_Spec(destination *v20230601ps.FlexibleServers_Database_Spec) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // AzureName + destination.AzureName = database.AzureName + + // Charset + if database.Charset != nil { + charset := *database.Charset + destination.Charset = &charset + } else { + destination.Charset = nil + } + + // Collation + if database.Collation != nil { + collation := *database.Collation + destination.Collation = &collation + } else { + destination.Collation = nil + } + + // OriginalVersion + destination.OriginalVersion = database.OriginalVersion() + + // Owner + if database.Owner != nil { + owner := database.Owner.Copy() + destination.Owner = &owner + } else { + destination.Owner = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// OriginalVersion returns the original API version used to create the resource. +func (database *FlexibleServers_Database_Spec) OriginalVersion() string { + return GroupVersion.Version +} + +// SetAzureName sets the Azure name of the resource +func (database *FlexibleServers_Database_Spec) SetAzureName(azureName string) { + database.AzureName = azureName +} + +type FlexibleServers_Database_STATUS struct { + // Charset: The charset of the database. + Charset *string `json:"charset,omitempty"` + + // Collation: The collation of the database. + Collation *string `json:"collation,omitempty"` + + // Conditions: The observed state of the resource + Conditions []conditions.Condition `json:"conditions,omitempty"` + + // Id: Fully qualified resource ID for the resource. E.g. + // "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" + Id *string `json:"id,omitempty"` + + // Name: The name of the resource + Name *string `json:"name,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 = &FlexibleServers_Database_STATUS{} + +// ConvertStatusFrom populates our FlexibleServers_Database_STATUS from the provided source +func (database *FlexibleServers_Database_STATUS) ConvertStatusFrom(source genruntime.ConvertibleStatus) error { + src, ok := source.(*v20230601ps.FlexibleServers_Database_STATUS) + if ok { + // Populate our instance from source + return database.AssignProperties_From_FlexibleServers_Database_STATUS(src) + } + + // Convert to an intermediate form + src = &v20230601ps.FlexibleServers_Database_STATUS{} + err := src.ConvertStatusFrom(source) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertStatusFrom()") + } + + // Update our instance from src + err = database.AssignProperties_From_FlexibleServers_Database_STATUS(src) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertStatusFrom()") + } + + return nil +} + +// ConvertStatusTo populates the provided destination from our FlexibleServers_Database_STATUS +func (database *FlexibleServers_Database_STATUS) ConvertStatusTo(destination genruntime.ConvertibleStatus) error { + dst, ok := destination.(*v20230601ps.FlexibleServers_Database_STATUS) + if ok { + // Populate destination from our instance + return database.AssignProperties_To_FlexibleServers_Database_STATUS(dst) + } + + // Convert to an intermediate form + dst = &v20230601ps.FlexibleServers_Database_STATUS{} + err := database.AssignProperties_To_FlexibleServers_Database_STATUS(dst) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertStatusTo()") + } + + // Update dst from our instance + err = dst.ConvertStatusTo(destination) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertStatusTo()") + } + + return nil +} + +var _ genruntime.FromARMConverter = &FlexibleServers_Database_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (database *FlexibleServers_Database_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &FlexibleServers_Database_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (database *FlexibleServers_Database_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(FlexibleServers_Database_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected FlexibleServers_Database_STATUS_ARM, got %T", armInput) + } + + // Set property "Charset": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Charset != nil { + charset := *typedInput.Properties.Charset + database.Charset = &charset + } + } + + // Set property "Collation": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.Collation != nil { + collation := *typedInput.Properties.Collation + database.Collation = &collation + } + } + + // no assignment for property "Conditions" + + // Set property "Id": + if typedInput.Id != nil { + id := *typedInput.Id + database.Id = &id + } + + // Set property "Name": + if typedInput.Name != nil { + name := *typedInput.Name + database.Name = &name + } + + // Set property "SystemData": + if typedInput.SystemData != nil { + var systemData1 SystemData_STATUS + err := systemData1.PopulateFromARM(owner, *typedInput.SystemData) + if err != nil { + return err + } + systemData := systemData1 + database.SystemData = &systemData + } + + // Set property "Type": + if typedInput.Type != nil { + typeVar := *typedInput.Type + database.Type = &typeVar + } + + // No error + return nil +} + +// AssignProperties_From_FlexibleServers_Database_STATUS populates our FlexibleServers_Database_STATUS from the provided source FlexibleServers_Database_STATUS +func (database *FlexibleServers_Database_STATUS) AssignProperties_From_FlexibleServers_Database_STATUS(source *v20230601ps.FlexibleServers_Database_STATUS) error { + + // Charset + database.Charset = genruntime.ClonePointerToString(source.Charset) + + // Collation + database.Collation = genruntime.ClonePointerToString(source.Collation) + + // Conditions + database.Conditions = genruntime.CloneSliceOfCondition(source.Conditions) + + // Id + database.Id = genruntime.ClonePointerToString(source.Id) + + // Name + database.Name = genruntime.ClonePointerToString(source.Name) + + // SystemData + if source.SystemData != nil { + var systemDatum SystemData_STATUS + err := systemDatum.AssignProperties_From_SystemData_STATUS(source.SystemData) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_SystemData_STATUS() to populate field SystemData") + } + database.SystemData = &systemDatum + } else { + database.SystemData = nil + } + + // Type + database.Type = genruntime.ClonePointerToString(source.Type) + + // No error + return nil +} + +// AssignProperties_To_FlexibleServers_Database_STATUS populates the provided destination FlexibleServers_Database_STATUS from our FlexibleServers_Database_STATUS +func (database *FlexibleServers_Database_STATUS) AssignProperties_To_FlexibleServers_Database_STATUS(destination *v20230601ps.FlexibleServers_Database_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // Charset + destination.Charset = genruntime.ClonePointerToString(database.Charset) + + // Collation + destination.Collation = genruntime.ClonePointerToString(database.Collation) + + // Conditions + destination.Conditions = genruntime.CloneSliceOfCondition(database.Conditions) + + // Id + destination.Id = genruntime.ClonePointerToString(database.Id) + + // Name + destination.Name = genruntime.ClonePointerToString(database.Name) + + // SystemData + if database.SystemData != nil { + var systemDatum v20230601ps.SystemData_STATUS + err := database.SystemData.AssignProperties_To_SystemData_STATUS(&systemDatum) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_SystemData_STATUS() to populate field SystemData") + } + destination.SystemData = &systemDatum + } else { + destination.SystemData = nil + } + + // Type + destination.Type = genruntime.ClonePointerToString(database.Type) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +func init() { + SchemeBuilder.Register(&FlexibleServersDatabase{}, &FlexibleServersDatabaseList{}) +} diff --git a/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_database_types_gen_test.go b/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_database_types_gen_test.go new file mode 100644 index 00000000000..ee1d82df44e --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_database_types_gen_test.go @@ -0,0 +1,393 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20230601preview + +import ( + "encoding/json" + v20221201s "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20221201/storage" + v20230601ps "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20230601preview/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_FlexibleServersDatabase_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 FlexibleServersDatabase to hub returns original", + prop.ForAll(RunResourceConversionTestForFlexibleServersDatabase, FlexibleServersDatabaseGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunResourceConversionTestForFlexibleServersDatabase tests if a specific instance of FlexibleServersDatabase round trips to the hub storage version and back losslessly +func RunResourceConversionTestForFlexibleServersDatabase(subject FlexibleServersDatabase) string { + // Copy subject to make sure conversion doesn't modify it + copied := subject.DeepCopy() + + // Convert to our hub version + var hub v20221201s.FlexibleServersDatabase + err := copied.ConvertTo(&hub) + if err != nil { + return err.Error() + } + + // Convert from our hub version + var actual FlexibleServersDatabase + 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_FlexibleServersDatabase_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from FlexibleServersDatabase to FlexibleServersDatabase via AssignProperties_To_FlexibleServersDatabase & AssignProperties_From_FlexibleServersDatabase returns original", + prop.ForAll(RunPropertyAssignmentTestForFlexibleServersDatabase, FlexibleServersDatabaseGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForFlexibleServersDatabase tests if a specific instance of FlexibleServersDatabase can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForFlexibleServersDatabase(subject FlexibleServersDatabase) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20230601ps.FlexibleServersDatabase + err := copied.AssignProperties_To_FlexibleServersDatabase(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual FlexibleServersDatabase + err = actual.AssignProperties_From_FlexibleServersDatabase(&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_FlexibleServersDatabase_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 FlexibleServersDatabase via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServersDatabase, FlexibleServersDatabaseGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServersDatabase runs a test to see if a specific instance of FlexibleServersDatabase round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServersDatabase(subject FlexibleServersDatabase) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServersDatabase + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of FlexibleServersDatabase instances for property testing - lazily instantiated by +// FlexibleServersDatabaseGenerator() +var flexibleServersDatabaseGenerator gopter.Gen + +// FlexibleServersDatabaseGenerator returns a generator of FlexibleServersDatabase instances for property testing. +func FlexibleServersDatabaseGenerator() gopter.Gen { + if flexibleServersDatabaseGenerator != nil { + return flexibleServersDatabaseGenerator + } + + generators := make(map[string]gopter.Gen) + AddRelatedPropertyGeneratorsForFlexibleServersDatabase(generators) + flexibleServersDatabaseGenerator = gen.Struct(reflect.TypeOf(FlexibleServersDatabase{}), generators) + + return flexibleServersDatabaseGenerator +} + +// AddRelatedPropertyGeneratorsForFlexibleServersDatabase is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForFlexibleServersDatabase(gens map[string]gopter.Gen) { + gens["Spec"] = FlexibleServers_Database_SpecGenerator() + gens["Status"] = FlexibleServers_Database_STATUSGenerator() +} + +func Test_FlexibleServers_Database_Spec_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from FlexibleServers_Database_Spec to FlexibleServers_Database_Spec via AssignProperties_To_FlexibleServers_Database_Spec & AssignProperties_From_FlexibleServers_Database_Spec returns original", + prop.ForAll(RunPropertyAssignmentTestForFlexibleServers_Database_Spec, FlexibleServers_Database_SpecGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForFlexibleServers_Database_Spec tests if a specific instance of FlexibleServers_Database_Spec can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForFlexibleServers_Database_Spec(subject FlexibleServers_Database_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 v20230601ps.FlexibleServers_Database_Spec + err := copied.AssignProperties_To_FlexibleServers_Database_Spec(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual FlexibleServers_Database_Spec + err = actual.AssignProperties_From_FlexibleServers_Database_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_FlexibleServers_Database_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 FlexibleServers_Database_Spec via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServers_Database_Spec, FlexibleServers_Database_SpecGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServers_Database_Spec runs a test to see if a specific instance of FlexibleServers_Database_Spec round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServers_Database_Spec(subject FlexibleServers_Database_Spec) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServers_Database_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 FlexibleServers_Database_Spec instances for property testing - lazily instantiated by +// FlexibleServers_Database_SpecGenerator() +var flexibleServers_Database_SpecGenerator gopter.Gen + +// FlexibleServers_Database_SpecGenerator returns a generator of FlexibleServers_Database_Spec instances for property testing. +func FlexibleServers_Database_SpecGenerator() gopter.Gen { + if flexibleServers_Database_SpecGenerator != nil { + return flexibleServers_Database_SpecGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServers_Database_Spec(generators) + flexibleServers_Database_SpecGenerator = gen.Struct(reflect.TypeOf(FlexibleServers_Database_Spec{}), generators) + + return flexibleServers_Database_SpecGenerator +} + +// AddIndependentPropertyGeneratorsForFlexibleServers_Database_Spec is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForFlexibleServers_Database_Spec(gens map[string]gopter.Gen) { + gens["AzureName"] = gen.AlphaString() + gens["Charset"] = gen.PtrOf(gen.AlphaString()) + gens["Collation"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_FlexibleServers_Database_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from FlexibleServers_Database_STATUS to FlexibleServers_Database_STATUS via AssignProperties_To_FlexibleServers_Database_STATUS & AssignProperties_From_FlexibleServers_Database_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForFlexibleServers_Database_STATUS, FlexibleServers_Database_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForFlexibleServers_Database_STATUS tests if a specific instance of FlexibleServers_Database_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForFlexibleServers_Database_STATUS(subject FlexibleServers_Database_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 v20230601ps.FlexibleServers_Database_STATUS + err := copied.AssignProperties_To_FlexibleServers_Database_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual FlexibleServers_Database_STATUS + err = actual.AssignProperties_From_FlexibleServers_Database_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_FlexibleServers_Database_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of FlexibleServers_Database_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServers_Database_STATUS, FlexibleServers_Database_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServers_Database_STATUS runs a test to see if a specific instance of FlexibleServers_Database_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServers_Database_STATUS(subject FlexibleServers_Database_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServers_Database_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of FlexibleServers_Database_STATUS instances for property testing - lazily instantiated by +// FlexibleServers_Database_STATUSGenerator() +var flexibleServers_Database_STATUSGenerator gopter.Gen + +// FlexibleServers_Database_STATUSGenerator returns a generator of FlexibleServers_Database_STATUS instances for property testing. +// We first initialize flexibleServers_Database_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 FlexibleServers_Database_STATUSGenerator() gopter.Gen { + if flexibleServers_Database_STATUSGenerator != nil { + return flexibleServers_Database_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServers_Database_STATUS(generators) + flexibleServers_Database_STATUSGenerator = gen.Struct(reflect.TypeOf(FlexibleServers_Database_STATUS{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServers_Database_STATUS(generators) + AddRelatedPropertyGeneratorsForFlexibleServers_Database_STATUS(generators) + flexibleServers_Database_STATUSGenerator = gen.Struct(reflect.TypeOf(FlexibleServers_Database_STATUS{}), generators) + + return flexibleServers_Database_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForFlexibleServers_Database_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForFlexibleServers_Database_STATUS(gens map[string]gopter.Gen) { + gens["Charset"] = gen.PtrOf(gen.AlphaString()) + gens["Collation"] = gen.PtrOf(gen.AlphaString()) + gens["Id"] = gen.PtrOf(gen.AlphaString()) + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["Type"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForFlexibleServers_Database_STATUS is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForFlexibleServers_Database_STATUS(gens map[string]gopter.Gen) { + gens["SystemData"] = gen.PtrOf(SystemData_STATUSGenerator()) +} diff --git a/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_firewall_rule_spec_arm_types_gen.go b/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_firewall_rule_spec_arm_types_gen.go new file mode 100644 index 00000000000..9a6a877daad --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_firewall_rule_spec_arm_types_gen.go @@ -0,0 +1,39 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20230601preview + +import "github.com/Azure/azure-service-operator/v2/pkg/genruntime" + +type FlexibleServers_FirewallRule_Spec_ARM struct { + Name string `json:"name,omitempty"` + + // Properties: The properties of a firewall rule. + Properties *FirewallRuleProperties_ARM `json:"properties,omitempty"` +} + +var _ genruntime.ARMResourceSpec = &FlexibleServers_FirewallRule_Spec_ARM{} + +// GetAPIVersion returns the ARM API version of the resource. This is always "2023-06-01-preview" +func (rule FlexibleServers_FirewallRule_Spec_ARM) GetAPIVersion() string { + return string(APIVersion_Value) +} + +// GetName returns the Name of the resource +func (rule *FlexibleServers_FirewallRule_Spec_ARM) GetName() string { + return rule.Name +} + +// GetType returns the ARM Type of the resource. This is always "Microsoft.DBforPostgreSQL/flexibleServers/firewallRules" +func (rule *FlexibleServers_FirewallRule_Spec_ARM) GetType() string { + return "Microsoft.DBforPostgreSQL/flexibleServers/firewallRules" +} + +// The properties of a server firewall rule. +type FirewallRuleProperties_ARM struct { + // EndIpAddress: The end IP address of the server firewall rule. Must be IPv4 format. + EndIpAddress *string `json:"endIpAddress,omitempty"` + + // StartIpAddress: The start IP address of the server firewall rule. Must be IPv4 format. + StartIpAddress *string `json:"startIpAddress,omitempty"` +} diff --git a/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_firewall_rule_spec_arm_types_gen_test.go b/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_firewall_rule_spec_arm_types_gen_test.go new file mode 100644 index 00000000000..51980a63e2d --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_firewall_rule_spec_arm_types_gen_test.go @@ -0,0 +1,155 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20230601preview + +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_FlexibleServers_FirewallRule_Spec_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of FlexibleServers_FirewallRule_Spec_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServers_FirewallRule_Spec_ARM, FlexibleServers_FirewallRule_Spec_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServers_FirewallRule_Spec_ARM runs a test to see if a specific instance of FlexibleServers_FirewallRule_Spec_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServers_FirewallRule_Spec_ARM(subject FlexibleServers_FirewallRule_Spec_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServers_FirewallRule_Spec_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of FlexibleServers_FirewallRule_Spec_ARM instances for property testing - lazily instantiated by +// FlexibleServers_FirewallRule_Spec_ARMGenerator() +var flexibleServers_FirewallRule_Spec_ARMGenerator gopter.Gen + +// FlexibleServers_FirewallRule_Spec_ARMGenerator returns a generator of FlexibleServers_FirewallRule_Spec_ARM instances for property testing. +// We first initialize flexibleServers_FirewallRule_Spec_ARMGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func FlexibleServers_FirewallRule_Spec_ARMGenerator() gopter.Gen { + if flexibleServers_FirewallRule_Spec_ARMGenerator != nil { + return flexibleServers_FirewallRule_Spec_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServers_FirewallRule_Spec_ARM(generators) + flexibleServers_FirewallRule_Spec_ARMGenerator = gen.Struct(reflect.TypeOf(FlexibleServers_FirewallRule_Spec_ARM{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServers_FirewallRule_Spec_ARM(generators) + AddRelatedPropertyGeneratorsForFlexibleServers_FirewallRule_Spec_ARM(generators) + flexibleServers_FirewallRule_Spec_ARMGenerator = gen.Struct(reflect.TypeOf(FlexibleServers_FirewallRule_Spec_ARM{}), generators) + + return flexibleServers_FirewallRule_Spec_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForFlexibleServers_FirewallRule_Spec_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForFlexibleServers_FirewallRule_Spec_ARM(gens map[string]gopter.Gen) { + gens["Name"] = gen.AlphaString() +} + +// AddRelatedPropertyGeneratorsForFlexibleServers_FirewallRule_Spec_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForFlexibleServers_FirewallRule_Spec_ARM(gens map[string]gopter.Gen) { + gens["Properties"] = gen.PtrOf(FirewallRuleProperties_ARMGenerator()) +} + +func Test_FirewallRuleProperties_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of FirewallRuleProperties_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFirewallRuleProperties_ARM, FirewallRuleProperties_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFirewallRuleProperties_ARM runs a test to see if a specific instance of FirewallRuleProperties_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForFirewallRuleProperties_ARM(subject FirewallRuleProperties_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FirewallRuleProperties_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of FirewallRuleProperties_ARM instances for property testing - lazily instantiated by +// FirewallRuleProperties_ARMGenerator() +var firewallRuleProperties_ARMGenerator gopter.Gen + +// FirewallRuleProperties_ARMGenerator returns a generator of FirewallRuleProperties_ARM instances for property testing. +func FirewallRuleProperties_ARMGenerator() gopter.Gen { + if firewallRuleProperties_ARMGenerator != nil { + return firewallRuleProperties_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFirewallRuleProperties_ARM(generators) + firewallRuleProperties_ARMGenerator = gen.Struct(reflect.TypeOf(FirewallRuleProperties_ARM{}), generators) + + return firewallRuleProperties_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForFirewallRuleProperties_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForFirewallRuleProperties_ARM(gens map[string]gopter.Gen) { + gens["EndIpAddress"] = gen.PtrOf(gen.AlphaString()) + gens["StartIpAddress"] = gen.PtrOf(gen.AlphaString()) +} diff --git a/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_firewall_rule_status_arm_types_gen.go b/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_firewall_rule_status_arm_types_gen.go new file mode 100644 index 00000000000..51b351c7c37 --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_firewall_rule_status_arm_types_gen.go @@ -0,0 +1,31 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20230601preview + +type FlexibleServers_FirewallRule_STATUS_ARM struct { + // Id: Fully qualified resource ID for the resource. E.g. + // "/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: The properties of a firewall rule. + Properties *FirewallRuleProperties_STATUS_ARM `json:"properties,omitempty"` + + // SystemData: Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData *SystemData_STATUS_ARM `json:"systemData,omitempty"` + + // Type: The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string `json:"type,omitempty"` +} + +// The properties of a server firewall rule. +type FirewallRuleProperties_STATUS_ARM struct { + // EndIpAddress: The end IP address of the server firewall rule. Must be IPv4 format. + EndIpAddress *string `json:"endIpAddress,omitempty"` + + // StartIpAddress: The start IP address of the server firewall rule. Must be IPv4 format. + StartIpAddress *string `json:"startIpAddress,omitempty"` +} diff --git a/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_firewall_rule_status_arm_types_gen_test.go b/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_firewall_rule_status_arm_types_gen_test.go new file mode 100644 index 00000000000..783f1885ef3 --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_firewall_rule_status_arm_types_gen_test.go @@ -0,0 +1,158 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20230601preview + +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_FlexibleServers_FirewallRule_STATUS_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of FlexibleServers_FirewallRule_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServers_FirewallRule_STATUS_ARM, FlexibleServers_FirewallRule_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServers_FirewallRule_STATUS_ARM runs a test to see if a specific instance of FlexibleServers_FirewallRule_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServers_FirewallRule_STATUS_ARM(subject FlexibleServers_FirewallRule_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServers_FirewallRule_STATUS_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of FlexibleServers_FirewallRule_STATUS_ARM instances for property testing - lazily instantiated by +// FlexibleServers_FirewallRule_STATUS_ARMGenerator() +var flexibleServers_FirewallRule_STATUS_ARMGenerator gopter.Gen + +// FlexibleServers_FirewallRule_STATUS_ARMGenerator returns a generator of FlexibleServers_FirewallRule_STATUS_ARM instances for property testing. +// We first initialize flexibleServers_FirewallRule_STATUS_ARMGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func FlexibleServers_FirewallRule_STATUS_ARMGenerator() gopter.Gen { + if flexibleServers_FirewallRule_STATUS_ARMGenerator != nil { + return flexibleServers_FirewallRule_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServers_FirewallRule_STATUS_ARM(generators) + flexibleServers_FirewallRule_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(FlexibleServers_FirewallRule_STATUS_ARM{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServers_FirewallRule_STATUS_ARM(generators) + AddRelatedPropertyGeneratorsForFlexibleServers_FirewallRule_STATUS_ARM(generators) + flexibleServers_FirewallRule_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(FlexibleServers_FirewallRule_STATUS_ARM{}), generators) + + return flexibleServers_FirewallRule_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForFlexibleServers_FirewallRule_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForFlexibleServers_FirewallRule_STATUS_ARM(gens map[string]gopter.Gen) { + gens["Id"] = gen.PtrOf(gen.AlphaString()) + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["Type"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForFlexibleServers_FirewallRule_STATUS_ARM is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForFlexibleServers_FirewallRule_STATUS_ARM(gens map[string]gopter.Gen) { + gens["Properties"] = gen.PtrOf(FirewallRuleProperties_STATUS_ARMGenerator()) + gens["SystemData"] = gen.PtrOf(SystemData_STATUS_ARMGenerator()) +} + +func Test_FirewallRuleProperties_STATUS_ARM_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of FirewallRuleProperties_STATUS_ARM via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFirewallRuleProperties_STATUS_ARM, FirewallRuleProperties_STATUS_ARMGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFirewallRuleProperties_STATUS_ARM runs a test to see if a specific instance of FirewallRuleProperties_STATUS_ARM round trips to JSON and back losslessly +func RunJSONSerializationTestForFirewallRuleProperties_STATUS_ARM(subject FirewallRuleProperties_STATUS_ARM) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FirewallRuleProperties_STATUS_ARM + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of FirewallRuleProperties_STATUS_ARM instances for property testing - lazily instantiated by +// FirewallRuleProperties_STATUS_ARMGenerator() +var firewallRuleProperties_STATUS_ARMGenerator gopter.Gen + +// FirewallRuleProperties_STATUS_ARMGenerator returns a generator of FirewallRuleProperties_STATUS_ARM instances for property testing. +func FirewallRuleProperties_STATUS_ARMGenerator() gopter.Gen { + if firewallRuleProperties_STATUS_ARMGenerator != nil { + return firewallRuleProperties_STATUS_ARMGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFirewallRuleProperties_STATUS_ARM(generators) + firewallRuleProperties_STATUS_ARMGenerator = gen.Struct(reflect.TypeOf(FirewallRuleProperties_STATUS_ARM{}), generators) + + return firewallRuleProperties_STATUS_ARMGenerator +} + +// AddIndependentPropertyGeneratorsForFirewallRuleProperties_STATUS_ARM is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForFirewallRuleProperties_STATUS_ARM(gens map[string]gopter.Gen) { + gens["EndIpAddress"] = gen.PtrOf(gen.AlphaString()) + gens["StartIpAddress"] = gen.PtrOf(gen.AlphaString()) +} diff --git a/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_firewall_rule_types_gen.go b/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_firewall_rule_types_gen.go new file mode 100644 index 00000000000..b743648720a --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_firewall_rule_types_gen.go @@ -0,0 +1,790 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20230601preview + +import ( + "fmt" + v20230601ps "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20230601preview/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/pkg/errors" + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/runtime" + "k8s.io/apimachinery/pkg/runtime/schema" + "sigs.k8s.io/controller-runtime/pkg/conversion" + "sigs.k8s.io/controller-runtime/pkg/webhook/admission" +) + +// +kubebuilder:object:root=true +// +kubebuilder:subresource:status +// +kubebuilder:printcolumn:name="Ready",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +// +kubebuilder:printcolumn:name="Severity",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].severity" +// +kubebuilder:printcolumn:name="Reason",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].reason" +// +kubebuilder:printcolumn:name="Message",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].message" +// Generator information: +// - Generated from: /postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2023-06-01-preview/FirewallRules.json +// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/flexibleServers/{serverName}/firewallRules/{firewallRuleName} +type FlexibleServersFirewallRule struct { + metav1.TypeMeta `json:",inline"` + metav1.ObjectMeta `json:"metadata,omitempty"` + Spec FlexibleServers_FirewallRule_Spec `json:"spec,omitempty"` + Status FlexibleServers_FirewallRule_STATUS `json:"status,omitempty"` +} + +var _ conditions.Conditioner = &FlexibleServersFirewallRule{} + +// GetConditions returns the conditions of the resource +func (rule *FlexibleServersFirewallRule) GetConditions() conditions.Conditions { + return rule.Status.Conditions +} + +// SetConditions sets the conditions on the resource status +func (rule *FlexibleServersFirewallRule) SetConditions(conditions conditions.Conditions) { + rule.Status.Conditions = conditions +} + +var _ conversion.Convertible = &FlexibleServersFirewallRule{} + +// ConvertFrom populates our FlexibleServersFirewallRule from the provided hub FlexibleServersFirewallRule +func (rule *FlexibleServersFirewallRule) ConvertFrom(hub conversion.Hub) error { + // intermediate variable for conversion + var source v20230601ps.FlexibleServersFirewallRule + + err := source.ConvertFrom(hub) + if err != nil { + return errors.Wrap(err, "converting from hub to source") + } + + err = rule.AssignProperties_From_FlexibleServersFirewallRule(&source) + if err != nil { + return errors.Wrap(err, "converting from source to rule") + } + + return nil +} + +// ConvertTo populates the provided hub FlexibleServersFirewallRule from our FlexibleServersFirewallRule +func (rule *FlexibleServersFirewallRule) ConvertTo(hub conversion.Hub) error { + // intermediate variable for conversion + var destination v20230601ps.FlexibleServersFirewallRule + err := rule.AssignProperties_To_FlexibleServersFirewallRule(&destination) + if err != nil { + return errors.Wrap(err, "converting to destination from rule") + } + err = destination.ConvertTo(hub) + if err != nil { + return errors.Wrap(err, "converting from destination to hub") + } + + return nil +} + +// +kubebuilder:webhook:path=/mutate-dbforpostgresql-azure-com-v1api20230601preview-flexibleserversfirewallrule,mutating=true,sideEffects=None,matchPolicy=Exact,failurePolicy=fail,groups=dbforpostgresql.azure.com,resources=flexibleserversfirewallrules,verbs=create;update,versions=v1api20230601preview,name=default.v1api20230601preview.flexibleserversfirewallrules.dbforpostgresql.azure.com,admissionReviewVersions=v1 + +var _ admission.Defaulter = &FlexibleServersFirewallRule{} + +// Default applies defaults to the FlexibleServersFirewallRule resource +func (rule *FlexibleServersFirewallRule) Default() { + rule.defaultImpl() + var temp any = rule + if runtimeDefaulter, ok := temp.(genruntime.Defaulter); ok { + runtimeDefaulter.CustomDefault() + } +} + +// defaultAzureName defaults the Azure name of the resource to the Kubernetes name +func (rule *FlexibleServersFirewallRule) defaultAzureName() { + if rule.Spec.AzureName == "" { + rule.Spec.AzureName = rule.Name + } +} + +// defaultImpl applies the code generated defaults to the FlexibleServersFirewallRule resource +func (rule *FlexibleServersFirewallRule) defaultImpl() { rule.defaultAzureName() } + +var _ genruntime.KubernetesResource = &FlexibleServersFirewallRule{} + +// AzureName returns the Azure name of the resource +func (rule *FlexibleServersFirewallRule) AzureName() string { + return rule.Spec.AzureName +} + +// GetAPIVersion returns the ARM API version of the resource. This is always "2023-06-01-preview" +func (rule FlexibleServersFirewallRule) GetAPIVersion() string { + return string(APIVersion_Value) +} + +// GetResourceScope returns the scope of the resource +func (rule *FlexibleServersFirewallRule) GetResourceScope() genruntime.ResourceScope { + return genruntime.ResourceScopeResourceGroup +} + +// GetSpec returns the specification of this resource +func (rule *FlexibleServersFirewallRule) GetSpec() genruntime.ConvertibleSpec { + return &rule.Spec +} + +// GetStatus returns the status of this resource +func (rule *FlexibleServersFirewallRule) GetStatus() genruntime.ConvertibleStatus { + return &rule.Status +} + +// GetSupportedOperations returns the operations supported by the resource +func (rule *FlexibleServersFirewallRule) GetSupportedOperations() []genruntime.ResourceOperation { + return []genruntime.ResourceOperation{ + genruntime.ResourceOperationDelete, + genruntime.ResourceOperationGet, + genruntime.ResourceOperationPut, + } +} + +// GetType returns the ARM Type of the resource. This is always "Microsoft.DBforPostgreSQL/flexibleServers/firewallRules" +func (rule *FlexibleServersFirewallRule) GetType() string { + return "Microsoft.DBforPostgreSQL/flexibleServers/firewallRules" +} + +// NewEmptyStatus returns a new empty (blank) status +func (rule *FlexibleServersFirewallRule) NewEmptyStatus() genruntime.ConvertibleStatus { + return &FlexibleServers_FirewallRule_STATUS{} +} + +// Owner returns the ResourceReference of the owner +func (rule *FlexibleServersFirewallRule) Owner() *genruntime.ResourceReference { + group, kind := genruntime.LookupOwnerGroupKind(rule.Spec) + return rule.Spec.Owner.AsResourceReference(group, kind) +} + +// SetStatus sets the status of this resource +func (rule *FlexibleServersFirewallRule) SetStatus(status genruntime.ConvertibleStatus) error { + // If we have exactly the right type of status, assign it + if st, ok := status.(*FlexibleServers_FirewallRule_STATUS); ok { + rule.Status = *st + return nil + } + + // Convert status to required version + var st FlexibleServers_FirewallRule_STATUS + err := status.ConvertStatusTo(&st) + if err != nil { + return errors.Wrap(err, "failed to convert status") + } + + rule.Status = st + return nil +} + +// +kubebuilder:webhook:path=/validate-dbforpostgresql-azure-com-v1api20230601preview-flexibleserversfirewallrule,mutating=false,sideEffects=None,matchPolicy=Exact,failurePolicy=fail,groups=dbforpostgresql.azure.com,resources=flexibleserversfirewallrules,verbs=create;update,versions=v1api20230601preview,name=validate.v1api20230601preview.flexibleserversfirewallrules.dbforpostgresql.azure.com,admissionReviewVersions=v1 + +var _ admission.Validator = &FlexibleServersFirewallRule{} + +// ValidateCreate validates the creation of the resource +func (rule *FlexibleServersFirewallRule) ValidateCreate() (admission.Warnings, error) { + validations := rule.createValidations() + var temp any = rule + if runtimeValidator, ok := temp.(genruntime.Validator); ok { + validations = append(validations, runtimeValidator.CreateValidations()...) + } + return genruntime.ValidateCreate(validations) +} + +// ValidateDelete validates the deletion of the resource +func (rule *FlexibleServersFirewallRule) ValidateDelete() (admission.Warnings, error) { + validations := rule.deleteValidations() + var temp any = rule + if runtimeValidator, ok := temp.(genruntime.Validator); ok { + validations = append(validations, runtimeValidator.DeleteValidations()...) + } + return genruntime.ValidateDelete(validations) +} + +// ValidateUpdate validates an update of the resource +func (rule *FlexibleServersFirewallRule) ValidateUpdate(old runtime.Object) (admission.Warnings, error) { + validations := rule.updateValidations() + var temp any = rule + 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 (rule *FlexibleServersFirewallRule) createValidations() []func() (admission.Warnings, error) { + return []func() (admission.Warnings, error){rule.validateResourceReferences, rule.validateOwnerReference} +} + +// deleteValidations validates the deletion of the resource +func (rule *FlexibleServersFirewallRule) deleteValidations() []func() (admission.Warnings, error) { + return nil +} + +// updateValidations validates the update of the resource +func (rule *FlexibleServersFirewallRule) updateValidations() []func(old runtime.Object) (admission.Warnings, error) { + return []func(old runtime.Object) (admission.Warnings, error){ + func(old runtime.Object) (admission.Warnings, error) { + return rule.validateResourceReferences() + }, + rule.validateWriteOnceProperties, + func(old runtime.Object) (admission.Warnings, error) { + return rule.validateOwnerReference() + }, + } +} + +// validateOwnerReference validates the owner field +func (rule *FlexibleServersFirewallRule) validateOwnerReference() (admission.Warnings, error) { + return genruntime.ValidateOwner(rule) +} + +// validateResourceReferences validates all resource references +func (rule *FlexibleServersFirewallRule) validateResourceReferences() (admission.Warnings, error) { + refs, err := reflecthelpers.FindResourceReferences(&rule.Spec) + if err != nil { + return nil, err + } + return genruntime.ValidateResourceReferences(refs) +} + +// validateWriteOnceProperties validates all WriteOnce properties +func (rule *FlexibleServersFirewallRule) validateWriteOnceProperties(old runtime.Object) (admission.Warnings, error) { + oldObj, ok := old.(*FlexibleServersFirewallRule) + if !ok { + return nil, nil + } + + return genruntime.ValidateWriteOnceProperties(oldObj, rule) +} + +// AssignProperties_From_FlexibleServersFirewallRule populates our FlexibleServersFirewallRule from the provided source FlexibleServersFirewallRule +func (rule *FlexibleServersFirewallRule) AssignProperties_From_FlexibleServersFirewallRule(source *v20230601ps.FlexibleServersFirewallRule) error { + + // ObjectMeta + rule.ObjectMeta = *source.ObjectMeta.DeepCopy() + + // Spec + var spec FlexibleServers_FirewallRule_Spec + err := spec.AssignProperties_From_FlexibleServers_FirewallRule_Spec(&source.Spec) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_FlexibleServers_FirewallRule_Spec() to populate field Spec") + } + rule.Spec = spec + + // Status + var status FlexibleServers_FirewallRule_STATUS + err = status.AssignProperties_From_FlexibleServers_FirewallRule_STATUS(&source.Status) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_FlexibleServers_FirewallRule_STATUS() to populate field Status") + } + rule.Status = status + + // No error + return nil +} + +// AssignProperties_To_FlexibleServersFirewallRule populates the provided destination FlexibleServersFirewallRule from our FlexibleServersFirewallRule +func (rule *FlexibleServersFirewallRule) AssignProperties_To_FlexibleServersFirewallRule(destination *v20230601ps.FlexibleServersFirewallRule) error { + + // ObjectMeta + destination.ObjectMeta = *rule.ObjectMeta.DeepCopy() + + // Spec + var spec v20230601ps.FlexibleServers_FirewallRule_Spec + err := rule.Spec.AssignProperties_To_FlexibleServers_FirewallRule_Spec(&spec) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_FlexibleServers_FirewallRule_Spec() to populate field Spec") + } + destination.Spec = spec + + // Status + var status v20230601ps.FlexibleServers_FirewallRule_STATUS + err = rule.Status.AssignProperties_To_FlexibleServers_FirewallRule_STATUS(&status) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_FlexibleServers_FirewallRule_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 (rule *FlexibleServersFirewallRule) OriginalGVK() *schema.GroupVersionKind { + return &schema.GroupVersionKind{ + Group: GroupVersion.Group, + Version: rule.Spec.OriginalVersion(), + Kind: "FlexibleServersFirewallRule", + } +} + +// +kubebuilder:object:root=true +// Generator information: +// - Generated from: /postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2023-06-01-preview/FirewallRules.json +// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/flexibleServers/{serverName}/firewallRules/{firewallRuleName} +type FlexibleServersFirewallRuleList struct { + metav1.TypeMeta `json:",inline"` + metav1.ListMeta `json:"metadata,omitempty"` + Items []FlexibleServersFirewallRule `json:"items"` +} + +type FlexibleServers_FirewallRule_Spec struct { + // +kubebuilder:validation:MinLength=1 + // +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"` + + // +kubebuilder:validation:Required + // +kubebuilder:validation:Pattern="^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$" + // EndIpAddress: The end IP address of the server firewall rule. Must be IPv4 format. + EndIpAddress *string `json:"endIpAddress,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 dbforpostgresql.azure.com/FlexibleServer resource + Owner *genruntime.KnownResourceReference `group:"dbforpostgresql.azure.com" json:"owner,omitempty" kind:"FlexibleServer"` + + // +kubebuilder:validation:Required + // +kubebuilder:validation:Pattern="^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$" + // StartIpAddress: The start IP address of the server firewall rule. Must be IPv4 format. + StartIpAddress *string `json:"startIpAddress,omitempty"` +} + +var _ genruntime.ARMTransformer = &FlexibleServers_FirewallRule_Spec{} + +// ConvertToARM converts from a Kubernetes CRD object to an ARM object +func (rule *FlexibleServers_FirewallRule_Spec) ConvertToARM(resolved genruntime.ConvertToARMResolvedDetails) (interface{}, error) { + if rule == nil { + return nil, nil + } + result := &FlexibleServers_FirewallRule_Spec_ARM{} + + // Set property "Name": + result.Name = resolved.Name + + // Set property "Properties": + if rule.EndIpAddress != nil || rule.StartIpAddress != nil { + result.Properties = &FirewallRuleProperties_ARM{} + } + if rule.EndIpAddress != nil { + endIpAddress := *rule.EndIpAddress + result.Properties.EndIpAddress = &endIpAddress + } + if rule.StartIpAddress != nil { + startIpAddress := *rule.StartIpAddress + result.Properties.StartIpAddress = &startIpAddress + } + return result, nil +} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (rule *FlexibleServers_FirewallRule_Spec) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &FlexibleServers_FirewallRule_Spec_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (rule *FlexibleServers_FirewallRule_Spec) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(FlexibleServers_FirewallRule_Spec_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected FlexibleServers_FirewallRule_Spec_ARM, got %T", armInput) + } + + // Set property "AzureName": + rule.SetAzureName(genruntime.ExtractKubernetesResourceNameFromARMName(typedInput.Name)) + + // Set property "EndIpAddress": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.EndIpAddress != nil { + endIpAddress := *typedInput.Properties.EndIpAddress + rule.EndIpAddress = &endIpAddress + } + } + + // Set property "Owner": + rule.Owner = &genruntime.KnownResourceReference{ + Name: owner.Name, + ARMID: owner.ARMID, + } + + // Set property "StartIpAddress": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.StartIpAddress != nil { + startIpAddress := *typedInput.Properties.StartIpAddress + rule.StartIpAddress = &startIpAddress + } + } + + // No error + return nil +} + +var _ genruntime.ConvertibleSpec = &FlexibleServers_FirewallRule_Spec{} + +// ConvertSpecFrom populates our FlexibleServers_FirewallRule_Spec from the provided source +func (rule *FlexibleServers_FirewallRule_Spec) ConvertSpecFrom(source genruntime.ConvertibleSpec) error { + src, ok := source.(*v20230601ps.FlexibleServers_FirewallRule_Spec) + if ok { + // Populate our instance from source + return rule.AssignProperties_From_FlexibleServers_FirewallRule_Spec(src) + } + + // Convert to an intermediate form + src = &v20230601ps.FlexibleServers_FirewallRule_Spec{} + err := src.ConvertSpecFrom(source) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertSpecFrom()") + } + + // Update our instance from src + err = rule.AssignProperties_From_FlexibleServers_FirewallRule_Spec(src) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertSpecFrom()") + } + + return nil +} + +// ConvertSpecTo populates the provided destination from our FlexibleServers_FirewallRule_Spec +func (rule *FlexibleServers_FirewallRule_Spec) ConvertSpecTo(destination genruntime.ConvertibleSpec) error { + dst, ok := destination.(*v20230601ps.FlexibleServers_FirewallRule_Spec) + if ok { + // Populate destination from our instance + return rule.AssignProperties_To_FlexibleServers_FirewallRule_Spec(dst) + } + + // Convert to an intermediate form + dst = &v20230601ps.FlexibleServers_FirewallRule_Spec{} + err := rule.AssignProperties_To_FlexibleServers_FirewallRule_Spec(dst) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertSpecTo()") + } + + // Update dst from our instance + err = dst.ConvertSpecTo(destination) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertSpecTo()") + } + + return nil +} + +// AssignProperties_From_FlexibleServers_FirewallRule_Spec populates our FlexibleServers_FirewallRule_Spec from the provided source FlexibleServers_FirewallRule_Spec +func (rule *FlexibleServers_FirewallRule_Spec) AssignProperties_From_FlexibleServers_FirewallRule_Spec(source *v20230601ps.FlexibleServers_FirewallRule_Spec) error { + + // AzureName + rule.AzureName = source.AzureName + + // EndIpAddress + if source.EndIpAddress != nil { + endIpAddress := *source.EndIpAddress + rule.EndIpAddress = &endIpAddress + } else { + rule.EndIpAddress = nil + } + + // Owner + if source.Owner != nil { + owner := source.Owner.Copy() + rule.Owner = &owner + } else { + rule.Owner = nil + } + + // StartIpAddress + if source.StartIpAddress != nil { + startIpAddress := *source.StartIpAddress + rule.StartIpAddress = &startIpAddress + } else { + rule.StartIpAddress = nil + } + + // No error + return nil +} + +// AssignProperties_To_FlexibleServers_FirewallRule_Spec populates the provided destination FlexibleServers_FirewallRule_Spec from our FlexibleServers_FirewallRule_Spec +func (rule *FlexibleServers_FirewallRule_Spec) AssignProperties_To_FlexibleServers_FirewallRule_Spec(destination *v20230601ps.FlexibleServers_FirewallRule_Spec) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // AzureName + destination.AzureName = rule.AzureName + + // EndIpAddress + if rule.EndIpAddress != nil { + endIpAddress := *rule.EndIpAddress + destination.EndIpAddress = &endIpAddress + } else { + destination.EndIpAddress = nil + } + + // OriginalVersion + destination.OriginalVersion = rule.OriginalVersion() + + // Owner + if rule.Owner != nil { + owner := rule.Owner.Copy() + destination.Owner = &owner + } else { + destination.Owner = nil + } + + // StartIpAddress + if rule.StartIpAddress != nil { + startIpAddress := *rule.StartIpAddress + destination.StartIpAddress = &startIpAddress + } else { + destination.StartIpAddress = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // No error + return nil +} + +// OriginalVersion returns the original API version used to create the resource. +func (rule *FlexibleServers_FirewallRule_Spec) OriginalVersion() string { + return GroupVersion.Version +} + +// SetAzureName sets the Azure name of the resource +func (rule *FlexibleServers_FirewallRule_Spec) SetAzureName(azureName string) { + rule.AzureName = azureName +} + +type FlexibleServers_FirewallRule_STATUS struct { + // Conditions: The observed state of the resource + Conditions []conditions.Condition `json:"conditions,omitempty"` + + // EndIpAddress: The end IP address of the server firewall rule. Must be IPv4 format. + EndIpAddress *string `json:"endIpAddress,omitempty"` + + // Id: Fully qualified resource ID for the resource. E.g. + // "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" + Id *string `json:"id,omitempty"` + + // Name: The name of the resource + Name *string `json:"name,omitempty"` + + // StartIpAddress: The start IP address of the server firewall rule. Must be IPv4 format. + StartIpAddress *string `json:"startIpAddress,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 = &FlexibleServers_FirewallRule_STATUS{} + +// ConvertStatusFrom populates our FlexibleServers_FirewallRule_STATUS from the provided source +func (rule *FlexibleServers_FirewallRule_STATUS) ConvertStatusFrom(source genruntime.ConvertibleStatus) error { + src, ok := source.(*v20230601ps.FlexibleServers_FirewallRule_STATUS) + if ok { + // Populate our instance from source + return rule.AssignProperties_From_FlexibleServers_FirewallRule_STATUS(src) + } + + // Convert to an intermediate form + src = &v20230601ps.FlexibleServers_FirewallRule_STATUS{} + err := src.ConvertStatusFrom(source) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertStatusFrom()") + } + + // Update our instance from src + err = rule.AssignProperties_From_FlexibleServers_FirewallRule_STATUS(src) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertStatusFrom()") + } + + return nil +} + +// ConvertStatusTo populates the provided destination from our FlexibleServers_FirewallRule_STATUS +func (rule *FlexibleServers_FirewallRule_STATUS) ConvertStatusTo(destination genruntime.ConvertibleStatus) error { + dst, ok := destination.(*v20230601ps.FlexibleServers_FirewallRule_STATUS) + if ok { + // Populate destination from our instance + return rule.AssignProperties_To_FlexibleServers_FirewallRule_STATUS(dst) + } + + // Convert to an intermediate form + dst = &v20230601ps.FlexibleServers_FirewallRule_STATUS{} + err := rule.AssignProperties_To_FlexibleServers_FirewallRule_STATUS(dst) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertStatusTo()") + } + + // Update dst from our instance + err = dst.ConvertStatusTo(destination) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertStatusTo()") + } + + return nil +} + +var _ genruntime.FromARMConverter = &FlexibleServers_FirewallRule_STATUS{} + +// NewEmptyARMValue returns an empty ARM value suitable for deserializing into +func (rule *FlexibleServers_FirewallRule_STATUS) NewEmptyARMValue() genruntime.ARMResourceStatus { + return &FlexibleServers_FirewallRule_STATUS_ARM{} +} + +// PopulateFromARM populates a Kubernetes CRD object from an Azure ARM object +func (rule *FlexibleServers_FirewallRule_STATUS) PopulateFromARM(owner genruntime.ArbitraryOwnerReference, armInput interface{}) error { + typedInput, ok := armInput.(FlexibleServers_FirewallRule_STATUS_ARM) + if !ok { + return fmt.Errorf("unexpected type supplied for PopulateFromARM() function. Expected FlexibleServers_FirewallRule_STATUS_ARM, got %T", armInput) + } + + // no assignment for property "Conditions" + + // Set property "EndIpAddress": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.EndIpAddress != nil { + endIpAddress := *typedInput.Properties.EndIpAddress + rule.EndIpAddress = &endIpAddress + } + } + + // Set property "Id": + if typedInput.Id != nil { + id := *typedInput.Id + rule.Id = &id + } + + // Set property "Name": + if typedInput.Name != nil { + name := *typedInput.Name + rule.Name = &name + } + + // Set property "StartIpAddress": + // copying flattened property: + if typedInput.Properties != nil { + if typedInput.Properties.StartIpAddress != nil { + startIpAddress := *typedInput.Properties.StartIpAddress + rule.StartIpAddress = &startIpAddress + } + } + + // Set property "SystemData": + if typedInput.SystemData != nil { + var systemData1 SystemData_STATUS + err := systemData1.PopulateFromARM(owner, *typedInput.SystemData) + if err != nil { + return err + } + systemData := systemData1 + rule.SystemData = &systemData + } + + // Set property "Type": + if typedInput.Type != nil { + typeVar := *typedInput.Type + rule.Type = &typeVar + } + + // No error + return nil +} + +// AssignProperties_From_FlexibleServers_FirewallRule_STATUS populates our FlexibleServers_FirewallRule_STATUS from the provided source FlexibleServers_FirewallRule_STATUS +func (rule *FlexibleServers_FirewallRule_STATUS) AssignProperties_From_FlexibleServers_FirewallRule_STATUS(source *v20230601ps.FlexibleServers_FirewallRule_STATUS) error { + + // Conditions + rule.Conditions = genruntime.CloneSliceOfCondition(source.Conditions) + + // EndIpAddress + rule.EndIpAddress = genruntime.ClonePointerToString(source.EndIpAddress) + + // Id + rule.Id = genruntime.ClonePointerToString(source.Id) + + // Name + rule.Name = genruntime.ClonePointerToString(source.Name) + + // StartIpAddress + rule.StartIpAddress = genruntime.ClonePointerToString(source.StartIpAddress) + + // SystemData + if source.SystemData != nil { + var systemDatum SystemData_STATUS + err := systemDatum.AssignProperties_From_SystemData_STATUS(source.SystemData) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_SystemData_STATUS() to populate field SystemData") + } + rule.SystemData = &systemDatum + } else { + rule.SystemData = nil + } + + // Type + rule.Type = genruntime.ClonePointerToString(source.Type) + + // No error + return nil +} + +// AssignProperties_To_FlexibleServers_FirewallRule_STATUS populates the provided destination FlexibleServers_FirewallRule_STATUS from our FlexibleServers_FirewallRule_STATUS +func (rule *FlexibleServers_FirewallRule_STATUS) AssignProperties_To_FlexibleServers_FirewallRule_STATUS(destination *v20230601ps.FlexibleServers_FirewallRule_STATUS) error { + // Create a new property bag + propertyBag := genruntime.NewPropertyBag() + + // Conditions + destination.Conditions = genruntime.CloneSliceOfCondition(rule.Conditions) + + // EndIpAddress + destination.EndIpAddress = genruntime.ClonePointerToString(rule.EndIpAddress) + + // Id + destination.Id = genruntime.ClonePointerToString(rule.Id) + + // Name + destination.Name = genruntime.ClonePointerToString(rule.Name) + + // StartIpAddress + destination.StartIpAddress = genruntime.ClonePointerToString(rule.StartIpAddress) + + // SystemData + if rule.SystemData != nil { + var systemDatum v20230601ps.SystemData_STATUS + err := rule.SystemData.AssignProperties_To_SystemData_STATUS(&systemDatum) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_SystemData_STATUS() to populate field SystemData") + } + destination.SystemData = &systemDatum + } else { + destination.SystemData = nil + } + + // 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(&FlexibleServersFirewallRule{}, &FlexibleServersFirewallRuleList{}) +} diff --git a/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_firewall_rule_types_gen_test.go b/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_firewall_rule_types_gen_test.go new file mode 100644 index 00000000000..f9cabe4ef09 --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/flexible_servers_firewall_rule_types_gen_test.go @@ -0,0 +1,393 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package v1api20230601preview + +import ( + "encoding/json" + v20221201s "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20221201/storage" + v20230601ps "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20230601preview/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_FlexibleServersFirewallRule_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 FlexibleServersFirewallRule to hub returns original", + prop.ForAll(RunResourceConversionTestForFlexibleServersFirewallRule, FlexibleServersFirewallRuleGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunResourceConversionTestForFlexibleServersFirewallRule tests if a specific instance of FlexibleServersFirewallRule round trips to the hub storage version and back losslessly +func RunResourceConversionTestForFlexibleServersFirewallRule(subject FlexibleServersFirewallRule) string { + // Copy subject to make sure conversion doesn't modify it + copied := subject.DeepCopy() + + // Convert to our hub version + var hub v20221201s.FlexibleServersFirewallRule + err := copied.ConvertTo(&hub) + if err != nil { + return err.Error() + } + + // Convert from our hub version + var actual FlexibleServersFirewallRule + 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_FlexibleServersFirewallRule_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from FlexibleServersFirewallRule to FlexibleServersFirewallRule via AssignProperties_To_FlexibleServersFirewallRule & AssignProperties_From_FlexibleServersFirewallRule returns original", + prop.ForAll(RunPropertyAssignmentTestForFlexibleServersFirewallRule, FlexibleServersFirewallRuleGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForFlexibleServersFirewallRule tests if a specific instance of FlexibleServersFirewallRule can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForFlexibleServersFirewallRule(subject FlexibleServersFirewallRule) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20230601ps.FlexibleServersFirewallRule + err := copied.AssignProperties_To_FlexibleServersFirewallRule(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual FlexibleServersFirewallRule + err = actual.AssignProperties_From_FlexibleServersFirewallRule(&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_FlexibleServersFirewallRule_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 FlexibleServersFirewallRule via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServersFirewallRule, FlexibleServersFirewallRuleGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServersFirewallRule runs a test to see if a specific instance of FlexibleServersFirewallRule round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServersFirewallRule(subject FlexibleServersFirewallRule) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServersFirewallRule + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of FlexibleServersFirewallRule instances for property testing - lazily instantiated by +// FlexibleServersFirewallRuleGenerator() +var flexibleServersFirewallRuleGenerator gopter.Gen + +// FlexibleServersFirewallRuleGenerator returns a generator of FlexibleServersFirewallRule instances for property testing. +func FlexibleServersFirewallRuleGenerator() gopter.Gen { + if flexibleServersFirewallRuleGenerator != nil { + return flexibleServersFirewallRuleGenerator + } + + generators := make(map[string]gopter.Gen) + AddRelatedPropertyGeneratorsForFlexibleServersFirewallRule(generators) + flexibleServersFirewallRuleGenerator = gen.Struct(reflect.TypeOf(FlexibleServersFirewallRule{}), generators) + + return flexibleServersFirewallRuleGenerator +} + +// AddRelatedPropertyGeneratorsForFlexibleServersFirewallRule is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForFlexibleServersFirewallRule(gens map[string]gopter.Gen) { + gens["Spec"] = FlexibleServers_FirewallRule_SpecGenerator() + gens["Status"] = FlexibleServers_FirewallRule_STATUSGenerator() +} + +func Test_FlexibleServers_FirewallRule_Spec_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from FlexibleServers_FirewallRule_Spec to FlexibleServers_FirewallRule_Spec via AssignProperties_To_FlexibleServers_FirewallRule_Spec & AssignProperties_From_FlexibleServers_FirewallRule_Spec returns original", + prop.ForAll(RunPropertyAssignmentTestForFlexibleServers_FirewallRule_Spec, FlexibleServers_FirewallRule_SpecGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForFlexibleServers_FirewallRule_Spec tests if a specific instance of FlexibleServers_FirewallRule_Spec can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForFlexibleServers_FirewallRule_Spec(subject FlexibleServers_FirewallRule_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 v20230601ps.FlexibleServers_FirewallRule_Spec + err := copied.AssignProperties_To_FlexibleServers_FirewallRule_Spec(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual FlexibleServers_FirewallRule_Spec + err = actual.AssignProperties_From_FlexibleServers_FirewallRule_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_FlexibleServers_FirewallRule_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 FlexibleServers_FirewallRule_Spec via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServers_FirewallRule_Spec, FlexibleServers_FirewallRule_SpecGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServers_FirewallRule_Spec runs a test to see if a specific instance of FlexibleServers_FirewallRule_Spec round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServers_FirewallRule_Spec(subject FlexibleServers_FirewallRule_Spec) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServers_FirewallRule_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 FlexibleServers_FirewallRule_Spec instances for property testing - lazily instantiated by +// FlexibleServers_FirewallRule_SpecGenerator() +var flexibleServers_FirewallRule_SpecGenerator gopter.Gen + +// FlexibleServers_FirewallRule_SpecGenerator returns a generator of FlexibleServers_FirewallRule_Spec instances for property testing. +func FlexibleServers_FirewallRule_SpecGenerator() gopter.Gen { + if flexibleServers_FirewallRule_SpecGenerator != nil { + return flexibleServers_FirewallRule_SpecGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServers_FirewallRule_Spec(generators) + flexibleServers_FirewallRule_SpecGenerator = gen.Struct(reflect.TypeOf(FlexibleServers_FirewallRule_Spec{}), generators) + + return flexibleServers_FirewallRule_SpecGenerator +} + +// AddIndependentPropertyGeneratorsForFlexibleServers_FirewallRule_Spec is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForFlexibleServers_FirewallRule_Spec(gens map[string]gopter.Gen) { + gens["AzureName"] = gen.AlphaString() + gens["EndIpAddress"] = gen.PtrOf(gen.AlphaString()) + gens["StartIpAddress"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_FlexibleServers_FirewallRule_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from FlexibleServers_FirewallRule_STATUS to FlexibleServers_FirewallRule_STATUS via AssignProperties_To_FlexibleServers_FirewallRule_STATUS & AssignProperties_From_FlexibleServers_FirewallRule_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForFlexibleServers_FirewallRule_STATUS, FlexibleServers_FirewallRule_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForFlexibleServers_FirewallRule_STATUS tests if a specific instance of FlexibleServers_FirewallRule_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForFlexibleServers_FirewallRule_STATUS(subject FlexibleServers_FirewallRule_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 v20230601ps.FlexibleServers_FirewallRule_STATUS + err := copied.AssignProperties_To_FlexibleServers_FirewallRule_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual FlexibleServers_FirewallRule_STATUS + err = actual.AssignProperties_From_FlexibleServers_FirewallRule_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_FlexibleServers_FirewallRule_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of FlexibleServers_FirewallRule_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServers_FirewallRule_STATUS, FlexibleServers_FirewallRule_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServers_FirewallRule_STATUS runs a test to see if a specific instance of FlexibleServers_FirewallRule_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServers_FirewallRule_STATUS(subject FlexibleServers_FirewallRule_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServers_FirewallRule_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of FlexibleServers_FirewallRule_STATUS instances for property testing - lazily instantiated by +// FlexibleServers_FirewallRule_STATUSGenerator() +var flexibleServers_FirewallRule_STATUSGenerator gopter.Gen + +// FlexibleServers_FirewallRule_STATUSGenerator returns a generator of FlexibleServers_FirewallRule_STATUS instances for property testing. +// We first initialize flexibleServers_FirewallRule_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 FlexibleServers_FirewallRule_STATUSGenerator() gopter.Gen { + if flexibleServers_FirewallRule_STATUSGenerator != nil { + return flexibleServers_FirewallRule_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServers_FirewallRule_STATUS(generators) + flexibleServers_FirewallRule_STATUSGenerator = gen.Struct(reflect.TypeOf(FlexibleServers_FirewallRule_STATUS{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServers_FirewallRule_STATUS(generators) + AddRelatedPropertyGeneratorsForFlexibleServers_FirewallRule_STATUS(generators) + flexibleServers_FirewallRule_STATUSGenerator = gen.Struct(reflect.TypeOf(FlexibleServers_FirewallRule_STATUS{}), generators) + + return flexibleServers_FirewallRule_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForFlexibleServers_FirewallRule_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForFlexibleServers_FirewallRule_STATUS(gens map[string]gopter.Gen) { + gens["EndIpAddress"] = gen.PtrOf(gen.AlphaString()) + gens["Id"] = gen.PtrOf(gen.AlphaString()) + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["StartIpAddress"] = gen.PtrOf(gen.AlphaString()) + gens["Type"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForFlexibleServers_FirewallRule_STATUS is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForFlexibleServers_FirewallRule_STATUS(gens map[string]gopter.Gen) { + gens["SystemData"] = gen.PtrOf(SystemData_STATUSGenerator()) +} diff --git a/v2/api/dbforpostgresql/v1api20230601preview/groupversion_info_gen.go b/v2/api/dbforpostgresql/v1api20230601preview/groupversion_info_gen.go new file mode 100644 index 00000000000..b0fb842e91c --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/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 v1api20230601preview contains API Schema definitions for the dbforpostgresql v1api20230601preview API group +// +kubebuilder:object:generate=true +// All object properties are optional by default, this will be overridden when needed: +// +kubebuilder:validation:Optional +// +groupName=dbforpostgresql.azure.com +// +versionName=v1api20230601preview +package v1api20230601preview + +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: "dbforpostgresql.azure.com", Version: "v1api20230601preview"} + + // 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/dbforpostgresql/v1api20230601preview/storage/flexible_server_types_gen.go b/v2/api/dbforpostgresql/v1api20230601preview/storage/flexible_server_types_gen.go new file mode 100644 index 00000000000..d7956609784 --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/storage/flexible_server_types_gen.go @@ -0,0 +1,3758 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package storage + +import ( + "context" + "fmt" + v20221201s "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20221201/storage" + "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/go-logr/logr" + "github.com/pkg/errors" + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/runtime/schema" + "sigs.k8s.io/controller-runtime/pkg/client" + "sigs.k8s.io/controller-runtime/pkg/conversion" +) + +// +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" +// Storage version of v1api20230601preview.FlexibleServer +// Generator information: +// - Generated from: /postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2023-06-01-preview/FlexibleServers.json +// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/flexibleServers/{serverName} +type FlexibleServer struct { + metav1.TypeMeta `json:",inline"` + metav1.ObjectMeta `json:"metadata,omitempty"` + Spec FlexibleServer_Spec `json:"spec,omitempty"` + Status FlexibleServer_STATUS `json:"status,omitempty"` +} + +var _ conditions.Conditioner = &FlexibleServer{} + +// GetConditions returns the conditions of the resource +func (server *FlexibleServer) GetConditions() conditions.Conditions { + return server.Status.Conditions +} + +// SetConditions sets the conditions on the resource status +func (server *FlexibleServer) SetConditions(conditions conditions.Conditions) { + server.Status.Conditions = conditions +} + +var _ conversion.Convertible = &FlexibleServer{} + +// ConvertFrom populates our FlexibleServer from the provided hub FlexibleServer +func (server *FlexibleServer) ConvertFrom(hub conversion.Hub) error { + source, ok := hub.(*v20221201s.FlexibleServer) + if !ok { + return fmt.Errorf("expected dbforpostgresql/v1api20221201/storage/FlexibleServer but received %T instead", hub) + } + + return server.AssignProperties_From_FlexibleServer(source) +} + +// ConvertTo populates the provided hub FlexibleServer from our FlexibleServer +func (server *FlexibleServer) ConvertTo(hub conversion.Hub) error { + destination, ok := hub.(*v20221201s.FlexibleServer) + if !ok { + return fmt.Errorf("expected dbforpostgresql/v1api20221201/storage/FlexibleServer but received %T instead", hub) + } + + return server.AssignProperties_To_FlexibleServer(destination) +} + +var _ genruntime.KubernetesExporter = &FlexibleServer{} + +// ExportKubernetesResources defines a resource which can create other resources in Kubernetes. +func (server *FlexibleServer) ExportKubernetesResources(_ context.Context, _ genruntime.MetaObject, _ *genericarmclient.GenericClient, _ logr.Logger) ([]client.Object, error) { + collector := configmaps.NewCollector(server.Namespace) + if server.Spec.OperatorSpec != nil && server.Spec.OperatorSpec.ConfigMaps != nil { + if server.Status.FullyQualifiedDomainName != nil { + collector.AddValue(server.Spec.OperatorSpec.ConfigMaps.FullyQualifiedDomainName, *server.Status.FullyQualifiedDomainName) + } + } + result, err := collector.Values() + if err != nil { + return nil, err + } + return configmaps.SliceToClientObjectSlice(result), nil +} + +var _ genruntime.KubernetesResource = &FlexibleServer{} + +// AzureName returns the Azure name of the resource +func (server *FlexibleServer) AzureName() string { + return server.Spec.AzureName +} + +// GetAPIVersion returns the ARM API version of the resource. This is always "2023-06-01-preview" +func (server FlexibleServer) GetAPIVersion() string { + return string(APIVersion_Value) +} + +// GetResourceScope returns the scope of the resource +func (server *FlexibleServer) GetResourceScope() genruntime.ResourceScope { + return genruntime.ResourceScopeResourceGroup +} + +// GetSpec returns the specification of this resource +func (server *FlexibleServer) GetSpec() genruntime.ConvertibleSpec { + return &server.Spec +} + +// GetStatus returns the status of this resource +func (server *FlexibleServer) GetStatus() genruntime.ConvertibleStatus { + return &server.Status +} + +// GetSupportedOperations returns the operations supported by the resource +func (server *FlexibleServer) GetSupportedOperations() []genruntime.ResourceOperation { + return []genruntime.ResourceOperation{ + genruntime.ResourceOperationDelete, + genruntime.ResourceOperationGet, + genruntime.ResourceOperationPut, + } +} + +// GetType returns the ARM Type of the resource. This is always "Microsoft.DBforPostgreSQL/flexibleServers" +func (server *FlexibleServer) GetType() string { + return "Microsoft.DBforPostgreSQL/flexibleServers" +} + +// NewEmptyStatus returns a new empty (blank) status +func (server *FlexibleServer) NewEmptyStatus() genruntime.ConvertibleStatus { + return &FlexibleServer_STATUS{} +} + +// Owner returns the ResourceReference of the owner +func (server *FlexibleServer) Owner() *genruntime.ResourceReference { + group, kind := genruntime.LookupOwnerGroupKind(server.Spec) + return server.Spec.Owner.AsResourceReference(group, kind) +} + +// SetStatus sets the status of this resource +func (server *FlexibleServer) SetStatus(status genruntime.ConvertibleStatus) error { + // If we have exactly the right type of status, assign it + if st, ok := status.(*FlexibleServer_STATUS); ok { + server.Status = *st + return nil + } + + // Convert status to required version + var st FlexibleServer_STATUS + err := status.ConvertStatusTo(&st) + if err != nil { + return errors.Wrap(err, "failed to convert status") + } + + server.Status = st + return nil +} + +// AssignProperties_From_FlexibleServer populates our FlexibleServer from the provided source FlexibleServer +func (server *FlexibleServer) AssignProperties_From_FlexibleServer(source *v20221201s.FlexibleServer) error { + + // ObjectMeta + server.ObjectMeta = *source.ObjectMeta.DeepCopy() + + // Spec + var spec FlexibleServer_Spec + err := spec.AssignProperties_From_FlexibleServer_Spec(&source.Spec) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_FlexibleServer_Spec() to populate field Spec") + } + server.Spec = spec + + // Status + var status FlexibleServer_STATUS + err = status.AssignProperties_From_FlexibleServer_STATUS(&source.Status) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_FlexibleServer_STATUS() to populate field Status") + } + server.Status = status + + // Invoke the augmentConversionForFlexibleServer interface (if implemented) to customize the conversion + var serverAsAny any = server + if augmentedServer, ok := serverAsAny.(augmentConversionForFlexibleServer); ok { + err := augmentedServer.AssignPropertiesFrom(source) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesFrom() for conversion") + } + } + + // No error + return nil +} + +// AssignProperties_To_FlexibleServer populates the provided destination FlexibleServer from our FlexibleServer +func (server *FlexibleServer) AssignProperties_To_FlexibleServer(destination *v20221201s.FlexibleServer) error { + + // ObjectMeta + destination.ObjectMeta = *server.ObjectMeta.DeepCopy() + + // Spec + var spec v20221201s.FlexibleServer_Spec + err := server.Spec.AssignProperties_To_FlexibleServer_Spec(&spec) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_FlexibleServer_Spec() to populate field Spec") + } + destination.Spec = spec + + // Status + var status v20221201s.FlexibleServer_STATUS + err = server.Status.AssignProperties_To_FlexibleServer_STATUS(&status) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_FlexibleServer_STATUS() to populate field Status") + } + destination.Status = status + + // Invoke the augmentConversionForFlexibleServer interface (if implemented) to customize the conversion + var serverAsAny any = server + if augmentedServer, ok := serverAsAny.(augmentConversionForFlexibleServer); ok { + err := augmentedServer.AssignPropertiesTo(destination) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesTo() for conversion") + } + } + + // No error + return nil +} + +// OriginalGVK returns a GroupValueKind for the original API version used to create the resource +func (server *FlexibleServer) OriginalGVK() *schema.GroupVersionKind { + return &schema.GroupVersionKind{ + Group: GroupVersion.Group, + Version: server.Spec.OriginalVersion, + Kind: "FlexibleServer", + } +} + +// +kubebuilder:object:root=true +// Storage version of v1api20230601preview.FlexibleServer +// Generator information: +// - Generated from: /postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2023-06-01-preview/FlexibleServers.json +// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/flexibleServers/{serverName} +type FlexibleServerList struct { + metav1.TypeMeta `json:",inline"` + metav1.ListMeta `json:"metadata,omitempty"` + Items []FlexibleServer `json:"items"` +} + +// Storage version of v1api20230601preview.APIVersion +// +kubebuilder:validation:Enum={"2023-06-01-preview"} +type APIVersion string + +const APIVersion_Value = APIVersion("2023-06-01-preview") + +type augmentConversionForFlexibleServer interface { + AssignPropertiesFrom(src *v20221201s.FlexibleServer) error + AssignPropertiesTo(dst *v20221201s.FlexibleServer) error +} + +// Storage version of v1api20230601preview.FlexibleServer_Spec +type FlexibleServer_Spec struct { + AdministratorLogin *string `json:"administratorLogin,omitempty"` + AdministratorLoginPassword *genruntime.SecretReference `json:"administratorLoginPassword,omitempty"` + AuthConfig *AuthConfig `json:"authConfig,omitempty"` + AvailabilityZone *string `json:"availabilityZone,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"` + Backup *Backup `json:"backup,omitempty"` + CreateMode *string `json:"createMode,omitempty"` + DataEncryption *DataEncryption `json:"dataEncryption,omitempty"` + HighAvailability *HighAvailability `json:"highAvailability,omitempty"` + Identity *UserAssignedIdentity `json:"identity,omitempty"` + Location *string `json:"location,omitempty"` + MaintenanceWindow *MaintenanceWindow `json:"maintenanceWindow,omitempty"` + Network *Network `json:"network,omitempty"` + OperatorSpec *FlexibleServerOperatorSpec `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"` + PointInTimeUTC *string `json:"pointInTimeUTC,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + Replica *Replica `json:"replica,omitempty"` + ReplicationRole *string `json:"replicationRole,omitempty"` + Sku *Sku `json:"sku,omitempty"` + + // SourceServerResourceReference: The source server resource ID to restore from. It's required when 'createMode' is + // 'PointInTimeRestore' or 'GeoRestore' or 'Replica' or 'ReviveDropped'. This property is returned only for Replica server + SourceServerResourceReference *genruntime.ResourceReference `armReference:"SourceServerResourceId" json:"sourceServerResourceReference,omitempty"` + Storage *Storage `json:"storage,omitempty"` + Tags map[string]string `json:"tags,omitempty"` + Version *string `json:"version,omitempty"` +} + +var _ genruntime.ConvertibleSpec = &FlexibleServer_Spec{} + +// ConvertSpecFrom populates our FlexibleServer_Spec from the provided source +func (server *FlexibleServer_Spec) ConvertSpecFrom(source genruntime.ConvertibleSpec) error { + src, ok := source.(*v20221201s.FlexibleServer_Spec) + if ok { + // Populate our instance from source + return server.AssignProperties_From_FlexibleServer_Spec(src) + } + + // Convert to an intermediate form + src = &v20221201s.FlexibleServer_Spec{} + err := src.ConvertSpecFrom(source) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertSpecFrom()") + } + + // Update our instance from src + err = server.AssignProperties_From_FlexibleServer_Spec(src) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertSpecFrom()") + } + + return nil +} + +// ConvertSpecTo populates the provided destination from our FlexibleServer_Spec +func (server *FlexibleServer_Spec) ConvertSpecTo(destination genruntime.ConvertibleSpec) error { + dst, ok := destination.(*v20221201s.FlexibleServer_Spec) + if ok { + // Populate destination from our instance + return server.AssignProperties_To_FlexibleServer_Spec(dst) + } + + // Convert to an intermediate form + dst = &v20221201s.FlexibleServer_Spec{} + err := server.AssignProperties_To_FlexibleServer_Spec(dst) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertSpecTo()") + } + + // Update dst from our instance + err = dst.ConvertSpecTo(destination) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertSpecTo()") + } + + return nil +} + +// AssignProperties_From_FlexibleServer_Spec populates our FlexibleServer_Spec from the provided source FlexibleServer_Spec +func (server *FlexibleServer_Spec) AssignProperties_From_FlexibleServer_Spec(source *v20221201s.FlexibleServer_Spec) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(source.PropertyBag) + + // AdministratorLogin + server.AdministratorLogin = genruntime.ClonePointerToString(source.AdministratorLogin) + + // AdministratorLoginPassword + if source.AdministratorLoginPassword != nil { + administratorLoginPassword := source.AdministratorLoginPassword.Copy() + server.AdministratorLoginPassword = &administratorLoginPassword + } else { + server.AdministratorLoginPassword = nil + } + + // AuthConfig + if source.AuthConfig != nil { + var authConfig AuthConfig + err := authConfig.AssignProperties_From_AuthConfig(source.AuthConfig) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_AuthConfig() to populate field AuthConfig") + } + server.AuthConfig = &authConfig + } else { + server.AuthConfig = nil + } + + // AvailabilityZone + server.AvailabilityZone = genruntime.ClonePointerToString(source.AvailabilityZone) + + // AzureName + server.AzureName = source.AzureName + + // Backup + if source.Backup != nil { + var backup Backup + err := backup.AssignProperties_From_Backup(source.Backup) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_Backup() to populate field Backup") + } + server.Backup = &backup + } else { + server.Backup = nil + } + + // CreateMode + server.CreateMode = genruntime.ClonePointerToString(source.CreateMode) + + // DataEncryption + if source.DataEncryption != nil { + var dataEncryption DataEncryption + err := dataEncryption.AssignProperties_From_DataEncryption(source.DataEncryption) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_DataEncryption() to populate field DataEncryption") + } + server.DataEncryption = &dataEncryption + } else { + server.DataEncryption = nil + } + + // HighAvailability + if source.HighAvailability != nil { + var highAvailability HighAvailability + err := highAvailability.AssignProperties_From_HighAvailability(source.HighAvailability) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_HighAvailability() to populate field HighAvailability") + } + server.HighAvailability = &highAvailability + } else { + server.HighAvailability = nil + } + + // Identity + if source.Identity != nil { + var identity UserAssignedIdentity + err := identity.AssignProperties_From_UserAssignedIdentity(source.Identity) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_UserAssignedIdentity() to populate field Identity") + } + server.Identity = &identity + } else { + server.Identity = nil + } + + // Location + server.Location = genruntime.ClonePointerToString(source.Location) + + // MaintenanceWindow + if source.MaintenanceWindow != nil { + var maintenanceWindow MaintenanceWindow + err := maintenanceWindow.AssignProperties_From_MaintenanceWindow(source.MaintenanceWindow) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_MaintenanceWindow() to populate field MaintenanceWindow") + } + server.MaintenanceWindow = &maintenanceWindow + } else { + server.MaintenanceWindow = nil + } + + // Network + if source.Network != nil { + var network Network + err := network.AssignProperties_From_Network(source.Network) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_Network() to populate field Network") + } + server.Network = &network + } else { + server.Network = nil + } + + // OperatorSpec + if source.OperatorSpec != nil { + var operatorSpec FlexibleServerOperatorSpec + err := operatorSpec.AssignProperties_From_FlexibleServerOperatorSpec(source.OperatorSpec) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_FlexibleServerOperatorSpec() to populate field OperatorSpec") + } + server.OperatorSpec = &operatorSpec + } else { + server.OperatorSpec = nil + } + + // OriginalVersion + server.OriginalVersion = source.OriginalVersion + + // Owner + if source.Owner != nil { + owner := source.Owner.Copy() + server.Owner = &owner + } else { + server.Owner = nil + } + + // PointInTimeUTC + server.PointInTimeUTC = genruntime.ClonePointerToString(source.PointInTimeUTC) + + // Replica + if propertyBag.Contains("Replica") { + var replica Replica + err := propertyBag.Pull("Replica", &replica) + if err != nil { + return errors.Wrap(err, "pulling 'Replica' from propertyBag") + } + + server.Replica = &replica + } else { + server.Replica = nil + } + + // ReplicationRole + server.ReplicationRole = genruntime.ClonePointerToString(source.ReplicationRole) + + // Sku + if source.Sku != nil { + var sku Sku + err := sku.AssignProperties_From_Sku(source.Sku) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_Sku() to populate field Sku") + } + server.Sku = &sku + } else { + server.Sku = nil + } + + // SourceServerResourceReference + if source.SourceServerResourceReference != nil { + sourceServerResourceReference := source.SourceServerResourceReference.Copy() + server.SourceServerResourceReference = &sourceServerResourceReference + } else { + server.SourceServerResourceReference = nil + } + + // Storage + if source.Storage != nil { + var storage Storage + err := storage.AssignProperties_From_Storage(source.Storage) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_Storage() to populate field Storage") + } + server.Storage = &storage + } else { + server.Storage = nil + } + + // Tags + server.Tags = genruntime.CloneMapOfStringToString(source.Tags) + + // Version + server.Version = genruntime.ClonePointerToString(source.Version) + + // Update the property bag + if len(propertyBag) > 0 { + server.PropertyBag = propertyBag + } else { + server.PropertyBag = nil + } + + // Invoke the augmentConversionForFlexibleServer_Spec interface (if implemented) to customize the conversion + var serverAsAny any = server + if augmentedServer, ok := serverAsAny.(augmentConversionForFlexibleServer_Spec); ok { + err := augmentedServer.AssignPropertiesFrom(source) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesFrom() for conversion") + } + } + + // No error + return nil +} + +// AssignProperties_To_FlexibleServer_Spec populates the provided destination FlexibleServer_Spec from our FlexibleServer_Spec +func (server *FlexibleServer_Spec) AssignProperties_To_FlexibleServer_Spec(destination *v20221201s.FlexibleServer_Spec) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(server.PropertyBag) + + // AdministratorLogin + destination.AdministratorLogin = genruntime.ClonePointerToString(server.AdministratorLogin) + + // AdministratorLoginPassword + if server.AdministratorLoginPassword != nil { + administratorLoginPassword := server.AdministratorLoginPassword.Copy() + destination.AdministratorLoginPassword = &administratorLoginPassword + } else { + destination.AdministratorLoginPassword = nil + } + + // AuthConfig + if server.AuthConfig != nil { + var authConfig v20221201s.AuthConfig + err := server.AuthConfig.AssignProperties_To_AuthConfig(&authConfig) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_AuthConfig() to populate field AuthConfig") + } + destination.AuthConfig = &authConfig + } else { + destination.AuthConfig = nil + } + + // AvailabilityZone + destination.AvailabilityZone = genruntime.ClonePointerToString(server.AvailabilityZone) + + // AzureName + destination.AzureName = server.AzureName + + // Backup + if server.Backup != nil { + var backup v20221201s.Backup + err := server.Backup.AssignProperties_To_Backup(&backup) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_Backup() to populate field Backup") + } + destination.Backup = &backup + } else { + destination.Backup = nil + } + + // CreateMode + destination.CreateMode = genruntime.ClonePointerToString(server.CreateMode) + + // DataEncryption + if server.DataEncryption != nil { + var dataEncryption v20221201s.DataEncryption + err := server.DataEncryption.AssignProperties_To_DataEncryption(&dataEncryption) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_DataEncryption() to populate field DataEncryption") + } + destination.DataEncryption = &dataEncryption + } else { + destination.DataEncryption = nil + } + + // HighAvailability + if server.HighAvailability != nil { + var highAvailability v20221201s.HighAvailability + err := server.HighAvailability.AssignProperties_To_HighAvailability(&highAvailability) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_HighAvailability() to populate field HighAvailability") + } + destination.HighAvailability = &highAvailability + } else { + destination.HighAvailability = nil + } + + // Identity + if server.Identity != nil { + var identity v20221201s.UserAssignedIdentity + err := server.Identity.AssignProperties_To_UserAssignedIdentity(&identity) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_UserAssignedIdentity() to populate field Identity") + } + destination.Identity = &identity + } else { + destination.Identity = nil + } + + // Location + destination.Location = genruntime.ClonePointerToString(server.Location) + + // MaintenanceWindow + if server.MaintenanceWindow != nil { + var maintenanceWindow v20221201s.MaintenanceWindow + err := server.MaintenanceWindow.AssignProperties_To_MaintenanceWindow(&maintenanceWindow) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_MaintenanceWindow() to populate field MaintenanceWindow") + } + destination.MaintenanceWindow = &maintenanceWindow + } else { + destination.MaintenanceWindow = nil + } + + // Network + if server.Network != nil { + var network v20221201s.Network + err := server.Network.AssignProperties_To_Network(&network) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_Network() to populate field Network") + } + destination.Network = &network + } else { + destination.Network = nil + } + + // OperatorSpec + if server.OperatorSpec != nil { + var operatorSpec v20221201s.FlexibleServerOperatorSpec + err := server.OperatorSpec.AssignProperties_To_FlexibleServerOperatorSpec(&operatorSpec) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_FlexibleServerOperatorSpec() to populate field OperatorSpec") + } + destination.OperatorSpec = &operatorSpec + } else { + destination.OperatorSpec = nil + } + + // OriginalVersion + destination.OriginalVersion = server.OriginalVersion + + // Owner + if server.Owner != nil { + owner := server.Owner.Copy() + destination.Owner = &owner + } else { + destination.Owner = nil + } + + // PointInTimeUTC + destination.PointInTimeUTC = genruntime.ClonePointerToString(server.PointInTimeUTC) + + // Replica + if server.Replica != nil { + propertyBag.Add("Replica", *server.Replica) + } else { + propertyBag.Remove("Replica") + } + + // ReplicationRole + destination.ReplicationRole = genruntime.ClonePointerToString(server.ReplicationRole) + + // Sku + if server.Sku != nil { + var sku v20221201s.Sku + err := server.Sku.AssignProperties_To_Sku(&sku) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_Sku() to populate field Sku") + } + destination.Sku = &sku + } else { + destination.Sku = nil + } + + // SourceServerResourceReference + if server.SourceServerResourceReference != nil { + sourceServerResourceReference := server.SourceServerResourceReference.Copy() + destination.SourceServerResourceReference = &sourceServerResourceReference + } else { + destination.SourceServerResourceReference = nil + } + + // Storage + if server.Storage != nil { + var storage v20221201s.Storage + err := server.Storage.AssignProperties_To_Storage(&storage) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_Storage() to populate field Storage") + } + destination.Storage = &storage + } else { + destination.Storage = nil + } + + // Tags + destination.Tags = genruntime.CloneMapOfStringToString(server.Tags) + + // Version + destination.Version = genruntime.ClonePointerToString(server.Version) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // Invoke the augmentConversionForFlexibleServer_Spec interface (if implemented) to customize the conversion + var serverAsAny any = server + if augmentedServer, ok := serverAsAny.(augmentConversionForFlexibleServer_Spec); ok { + err := augmentedServer.AssignPropertiesTo(destination) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesTo() for conversion") + } + } + + // No error + return nil +} + +// Storage version of v1api20230601preview.FlexibleServer_STATUS +type FlexibleServer_STATUS struct { + AdministratorLogin *string `json:"administratorLogin,omitempty"` + AuthConfig *AuthConfig_STATUS `json:"authConfig,omitempty"` + AvailabilityZone *string `json:"availabilityZone,omitempty"` + Backup *Backup_STATUS `json:"backup,omitempty"` + Conditions []conditions.Condition `json:"conditions,omitempty"` + CreateMode *string `json:"createMode,omitempty"` + DataEncryption *DataEncryption_STATUS `json:"dataEncryption,omitempty"` + FullyQualifiedDomainName *string `json:"fullyQualifiedDomainName,omitempty"` + HighAvailability *HighAvailability_STATUS `json:"highAvailability,omitempty"` + Id *string `json:"id,omitempty"` + Identity *UserAssignedIdentity_STATUS `json:"identity,omitempty"` + Location *string `json:"location,omitempty"` + MaintenanceWindow *MaintenanceWindow_STATUS `json:"maintenanceWindow,omitempty"` + MinorVersion *string `json:"minorVersion,omitempty"` + Name *string `json:"name,omitempty"` + Network *Network_STATUS `json:"network,omitempty"` + PointInTimeUTC *string `json:"pointInTimeUTC,omitempty"` + PrivateEndpointConnections []PrivateEndpointConnection_STATUS `json:"privateEndpointConnections,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + Replica *Replica_STATUS `json:"replica,omitempty"` + ReplicaCapacity *int `json:"replicaCapacity,omitempty"` + ReplicationRole *string `json:"replicationRole,omitempty"` + Sku *Sku_STATUS `json:"sku,omitempty"` + SourceServerResourceId *string `json:"sourceServerResourceId,omitempty"` + State *string `json:"state,omitempty"` + Storage *Storage_STATUS `json:"storage,omitempty"` + SystemData *SystemData_STATUS `json:"systemData,omitempty"` + Tags map[string]string `json:"tags,omitempty"` + Type *string `json:"type,omitempty"` + Version *string `json:"version,omitempty"` +} + +var _ genruntime.ConvertibleStatus = &FlexibleServer_STATUS{} + +// ConvertStatusFrom populates our FlexibleServer_STATUS from the provided source +func (server *FlexibleServer_STATUS) ConvertStatusFrom(source genruntime.ConvertibleStatus) error { + src, ok := source.(*v20221201s.FlexibleServer_STATUS) + if ok { + // Populate our instance from source + return server.AssignProperties_From_FlexibleServer_STATUS(src) + } + + // Convert to an intermediate form + src = &v20221201s.FlexibleServer_STATUS{} + err := src.ConvertStatusFrom(source) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertStatusFrom()") + } + + // Update our instance from src + err = server.AssignProperties_From_FlexibleServer_STATUS(src) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertStatusFrom()") + } + + return nil +} + +// ConvertStatusTo populates the provided destination from our FlexibleServer_STATUS +func (server *FlexibleServer_STATUS) ConvertStatusTo(destination genruntime.ConvertibleStatus) error { + dst, ok := destination.(*v20221201s.FlexibleServer_STATUS) + if ok { + // Populate destination from our instance + return server.AssignProperties_To_FlexibleServer_STATUS(dst) + } + + // Convert to an intermediate form + dst = &v20221201s.FlexibleServer_STATUS{} + err := server.AssignProperties_To_FlexibleServer_STATUS(dst) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertStatusTo()") + } + + // Update dst from our instance + err = dst.ConvertStatusTo(destination) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertStatusTo()") + } + + return nil +} + +// AssignProperties_From_FlexibleServer_STATUS populates our FlexibleServer_STATUS from the provided source FlexibleServer_STATUS +func (server *FlexibleServer_STATUS) AssignProperties_From_FlexibleServer_STATUS(source *v20221201s.FlexibleServer_STATUS) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(source.PropertyBag) + + // AdministratorLogin + server.AdministratorLogin = genruntime.ClonePointerToString(source.AdministratorLogin) + + // AuthConfig + if source.AuthConfig != nil { + var authConfig AuthConfig_STATUS + err := authConfig.AssignProperties_From_AuthConfig_STATUS(source.AuthConfig) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_AuthConfig_STATUS() to populate field AuthConfig") + } + server.AuthConfig = &authConfig + } else { + server.AuthConfig = nil + } + + // AvailabilityZone + server.AvailabilityZone = genruntime.ClonePointerToString(source.AvailabilityZone) + + // Backup + if source.Backup != nil { + var backup Backup_STATUS + err := backup.AssignProperties_From_Backup_STATUS(source.Backup) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_Backup_STATUS() to populate field Backup") + } + server.Backup = &backup + } else { + server.Backup = nil + } + + // Conditions + server.Conditions = genruntime.CloneSliceOfCondition(source.Conditions) + + // CreateMode + server.CreateMode = genruntime.ClonePointerToString(source.CreateMode) + + // DataEncryption + if source.DataEncryption != nil { + var dataEncryption DataEncryption_STATUS + err := dataEncryption.AssignProperties_From_DataEncryption_STATUS(source.DataEncryption) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_DataEncryption_STATUS() to populate field DataEncryption") + } + server.DataEncryption = &dataEncryption + } else { + server.DataEncryption = nil + } + + // FullyQualifiedDomainName + server.FullyQualifiedDomainName = genruntime.ClonePointerToString(source.FullyQualifiedDomainName) + + // HighAvailability + if source.HighAvailability != nil { + var highAvailability HighAvailability_STATUS + err := highAvailability.AssignProperties_From_HighAvailability_STATUS(source.HighAvailability) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_HighAvailability_STATUS() to populate field HighAvailability") + } + server.HighAvailability = &highAvailability + } else { + server.HighAvailability = nil + } + + // Id + server.Id = genruntime.ClonePointerToString(source.Id) + + // Identity + if source.Identity != nil { + var identity UserAssignedIdentity_STATUS + err := identity.AssignProperties_From_UserAssignedIdentity_STATUS(source.Identity) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_UserAssignedIdentity_STATUS() to populate field Identity") + } + server.Identity = &identity + } else { + server.Identity = nil + } + + // Location + server.Location = genruntime.ClonePointerToString(source.Location) + + // MaintenanceWindow + if source.MaintenanceWindow != nil { + var maintenanceWindow MaintenanceWindow_STATUS + err := maintenanceWindow.AssignProperties_From_MaintenanceWindow_STATUS(source.MaintenanceWindow) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_MaintenanceWindow_STATUS() to populate field MaintenanceWindow") + } + server.MaintenanceWindow = &maintenanceWindow + } else { + server.MaintenanceWindow = nil + } + + // MinorVersion + server.MinorVersion = genruntime.ClonePointerToString(source.MinorVersion) + + // Name + server.Name = genruntime.ClonePointerToString(source.Name) + + // Network + if source.Network != nil { + var network Network_STATUS + err := network.AssignProperties_From_Network_STATUS(source.Network) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_Network_STATUS() to populate field Network") + } + server.Network = &network + } else { + server.Network = nil + } + + // PointInTimeUTC + server.PointInTimeUTC = genruntime.ClonePointerToString(source.PointInTimeUTC) + + // PrivateEndpointConnections + if propertyBag.Contains("PrivateEndpointConnections") { + var privateEndpointConnection []PrivateEndpointConnection_STATUS + err := propertyBag.Pull("PrivateEndpointConnections", &privateEndpointConnection) + if err != nil { + return errors.Wrap(err, "pulling 'PrivateEndpointConnections' from propertyBag") + } + + server.PrivateEndpointConnections = privateEndpointConnection + } else { + server.PrivateEndpointConnections = nil + } + + // Replica + if propertyBag.Contains("Replica") { + var replica Replica_STATUS + err := propertyBag.Pull("Replica", &replica) + if err != nil { + return errors.Wrap(err, "pulling 'Replica' from propertyBag") + } + + server.Replica = &replica + } else { + server.Replica = nil + } + + // ReplicaCapacity + server.ReplicaCapacity = genruntime.ClonePointerToInt(source.ReplicaCapacity) + + // ReplicationRole + server.ReplicationRole = genruntime.ClonePointerToString(source.ReplicationRole) + + // Sku + if source.Sku != nil { + var sku Sku_STATUS + err := sku.AssignProperties_From_Sku_STATUS(source.Sku) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_Sku_STATUS() to populate field Sku") + } + server.Sku = &sku + } else { + server.Sku = nil + } + + // SourceServerResourceId + server.SourceServerResourceId = genruntime.ClonePointerToString(source.SourceServerResourceId) + + // State + server.State = genruntime.ClonePointerToString(source.State) + + // Storage + if source.Storage != nil { + var storage Storage_STATUS + err := storage.AssignProperties_From_Storage_STATUS(source.Storage) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_Storage_STATUS() to populate field Storage") + } + server.Storage = &storage + } else { + server.Storage = nil + } + + // SystemData + if source.SystemData != nil { + var systemDatum SystemData_STATUS + err := systemDatum.AssignProperties_From_SystemData_STATUS(source.SystemData) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_SystemData_STATUS() to populate field SystemData") + } + server.SystemData = &systemDatum + } else { + server.SystemData = nil + } + + // Tags + server.Tags = genruntime.CloneMapOfStringToString(source.Tags) + + // Type + server.Type = genruntime.ClonePointerToString(source.Type) + + // Version + server.Version = genruntime.ClonePointerToString(source.Version) + + // Update the property bag + if len(propertyBag) > 0 { + server.PropertyBag = propertyBag + } else { + server.PropertyBag = nil + } + + // Invoke the augmentConversionForFlexibleServer_STATUS interface (if implemented) to customize the conversion + var serverAsAny any = server + if augmentedServer, ok := serverAsAny.(augmentConversionForFlexibleServer_STATUS); ok { + err := augmentedServer.AssignPropertiesFrom(source) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesFrom() for conversion") + } + } + + // No error + return nil +} + +// AssignProperties_To_FlexibleServer_STATUS populates the provided destination FlexibleServer_STATUS from our FlexibleServer_STATUS +func (server *FlexibleServer_STATUS) AssignProperties_To_FlexibleServer_STATUS(destination *v20221201s.FlexibleServer_STATUS) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(server.PropertyBag) + + // AdministratorLogin + destination.AdministratorLogin = genruntime.ClonePointerToString(server.AdministratorLogin) + + // AuthConfig + if server.AuthConfig != nil { + var authConfig v20221201s.AuthConfig_STATUS + err := server.AuthConfig.AssignProperties_To_AuthConfig_STATUS(&authConfig) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_AuthConfig_STATUS() to populate field AuthConfig") + } + destination.AuthConfig = &authConfig + } else { + destination.AuthConfig = nil + } + + // AvailabilityZone + destination.AvailabilityZone = genruntime.ClonePointerToString(server.AvailabilityZone) + + // Backup + if server.Backup != nil { + var backup v20221201s.Backup_STATUS + err := server.Backup.AssignProperties_To_Backup_STATUS(&backup) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_Backup_STATUS() to populate field Backup") + } + destination.Backup = &backup + } else { + destination.Backup = nil + } + + // Conditions + destination.Conditions = genruntime.CloneSliceOfCondition(server.Conditions) + + // CreateMode + destination.CreateMode = genruntime.ClonePointerToString(server.CreateMode) + + // DataEncryption + if server.DataEncryption != nil { + var dataEncryption v20221201s.DataEncryption_STATUS + err := server.DataEncryption.AssignProperties_To_DataEncryption_STATUS(&dataEncryption) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_DataEncryption_STATUS() to populate field DataEncryption") + } + destination.DataEncryption = &dataEncryption + } else { + destination.DataEncryption = nil + } + + // FullyQualifiedDomainName + destination.FullyQualifiedDomainName = genruntime.ClonePointerToString(server.FullyQualifiedDomainName) + + // HighAvailability + if server.HighAvailability != nil { + var highAvailability v20221201s.HighAvailability_STATUS + err := server.HighAvailability.AssignProperties_To_HighAvailability_STATUS(&highAvailability) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_HighAvailability_STATUS() to populate field HighAvailability") + } + destination.HighAvailability = &highAvailability + } else { + destination.HighAvailability = nil + } + + // Id + destination.Id = genruntime.ClonePointerToString(server.Id) + + // Identity + if server.Identity != nil { + var identity v20221201s.UserAssignedIdentity_STATUS + err := server.Identity.AssignProperties_To_UserAssignedIdentity_STATUS(&identity) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_UserAssignedIdentity_STATUS() to populate field Identity") + } + destination.Identity = &identity + } else { + destination.Identity = nil + } + + // Location + destination.Location = genruntime.ClonePointerToString(server.Location) + + // MaintenanceWindow + if server.MaintenanceWindow != nil { + var maintenanceWindow v20221201s.MaintenanceWindow_STATUS + err := server.MaintenanceWindow.AssignProperties_To_MaintenanceWindow_STATUS(&maintenanceWindow) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_MaintenanceWindow_STATUS() to populate field MaintenanceWindow") + } + destination.MaintenanceWindow = &maintenanceWindow + } else { + destination.MaintenanceWindow = nil + } + + // MinorVersion + destination.MinorVersion = genruntime.ClonePointerToString(server.MinorVersion) + + // Name + destination.Name = genruntime.ClonePointerToString(server.Name) + + // Network + if server.Network != nil { + var network v20221201s.Network_STATUS + err := server.Network.AssignProperties_To_Network_STATUS(&network) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_Network_STATUS() to populate field Network") + } + destination.Network = &network + } else { + destination.Network = nil + } + + // PointInTimeUTC + destination.PointInTimeUTC = genruntime.ClonePointerToString(server.PointInTimeUTC) + + // PrivateEndpointConnections + if len(server.PrivateEndpointConnections) > 0 { + propertyBag.Add("PrivateEndpointConnections", server.PrivateEndpointConnections) + } else { + propertyBag.Remove("PrivateEndpointConnections") + } + + // Replica + if server.Replica != nil { + propertyBag.Add("Replica", *server.Replica) + } else { + propertyBag.Remove("Replica") + } + + // ReplicaCapacity + destination.ReplicaCapacity = genruntime.ClonePointerToInt(server.ReplicaCapacity) + + // ReplicationRole + destination.ReplicationRole = genruntime.ClonePointerToString(server.ReplicationRole) + + // Sku + if server.Sku != nil { + var sku v20221201s.Sku_STATUS + err := server.Sku.AssignProperties_To_Sku_STATUS(&sku) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_Sku_STATUS() to populate field Sku") + } + destination.Sku = &sku + } else { + destination.Sku = nil + } + + // SourceServerResourceId + destination.SourceServerResourceId = genruntime.ClonePointerToString(server.SourceServerResourceId) + + // State + destination.State = genruntime.ClonePointerToString(server.State) + + // Storage + if server.Storage != nil { + var storage v20221201s.Storage_STATUS + err := server.Storage.AssignProperties_To_Storage_STATUS(&storage) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_Storage_STATUS() to populate field Storage") + } + destination.Storage = &storage + } else { + destination.Storage = nil + } + + // SystemData + if server.SystemData != nil { + var systemDatum v20221201s.SystemData_STATUS + err := server.SystemData.AssignProperties_To_SystemData_STATUS(&systemDatum) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_SystemData_STATUS() to populate field SystemData") + } + destination.SystemData = &systemDatum + } else { + destination.SystemData = nil + } + + // Tags + destination.Tags = genruntime.CloneMapOfStringToString(server.Tags) + + // Type + destination.Type = genruntime.ClonePointerToString(server.Type) + + // Version + destination.Version = genruntime.ClonePointerToString(server.Version) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // Invoke the augmentConversionForFlexibleServer_STATUS interface (if implemented) to customize the conversion + var serverAsAny any = server + if augmentedServer, ok := serverAsAny.(augmentConversionForFlexibleServer_STATUS); ok { + err := augmentedServer.AssignPropertiesTo(destination) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesTo() for conversion") + } + } + + // No error + return nil +} + +type augmentConversionForFlexibleServer_Spec interface { + AssignPropertiesFrom(src *v20221201s.FlexibleServer_Spec) error + AssignPropertiesTo(dst *v20221201s.FlexibleServer_Spec) error +} + +type augmentConversionForFlexibleServer_STATUS interface { + AssignPropertiesFrom(src *v20221201s.FlexibleServer_STATUS) error + AssignPropertiesTo(dst *v20221201s.FlexibleServer_STATUS) error +} + +// Storage version of v1api20230601preview.AuthConfig +// Authentication configuration properties of a server +type AuthConfig struct { + ActiveDirectoryAuth *string `json:"activeDirectoryAuth,omitempty"` + PasswordAuth *string `json:"passwordAuth,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + TenantId *string `json:"tenantId,omitempty"` +} + +// AssignProperties_From_AuthConfig populates our AuthConfig from the provided source AuthConfig +func (config *AuthConfig) AssignProperties_From_AuthConfig(source *v20221201s.AuthConfig) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(source.PropertyBag) + + // ActiveDirectoryAuth + config.ActiveDirectoryAuth = genruntime.ClonePointerToString(source.ActiveDirectoryAuth) + + // PasswordAuth + config.PasswordAuth = genruntime.ClonePointerToString(source.PasswordAuth) + + // TenantId + config.TenantId = genruntime.ClonePointerToString(source.TenantId) + + // Update the property bag + if len(propertyBag) > 0 { + config.PropertyBag = propertyBag + } else { + config.PropertyBag = nil + } + + // Invoke the augmentConversionForAuthConfig interface (if implemented) to customize the conversion + var configAsAny any = config + if augmentedConfig, ok := configAsAny.(augmentConversionForAuthConfig); ok { + err := augmentedConfig.AssignPropertiesFrom(source) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesFrom() for conversion") + } + } + + // No error + return nil +} + +// AssignProperties_To_AuthConfig populates the provided destination AuthConfig from our AuthConfig +func (config *AuthConfig) AssignProperties_To_AuthConfig(destination *v20221201s.AuthConfig) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(config.PropertyBag) + + // ActiveDirectoryAuth + destination.ActiveDirectoryAuth = genruntime.ClonePointerToString(config.ActiveDirectoryAuth) + + // PasswordAuth + destination.PasswordAuth = genruntime.ClonePointerToString(config.PasswordAuth) + + // TenantId + destination.TenantId = genruntime.ClonePointerToString(config.TenantId) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // Invoke the augmentConversionForAuthConfig interface (if implemented) to customize the conversion + var configAsAny any = config + if augmentedConfig, ok := configAsAny.(augmentConversionForAuthConfig); ok { + err := augmentedConfig.AssignPropertiesTo(destination) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesTo() for conversion") + } + } + + // No error + return nil +} + +// Storage version of v1api20230601preview.AuthConfig_STATUS +// Authentication configuration properties of a server +type AuthConfig_STATUS struct { + ActiveDirectoryAuth *string `json:"activeDirectoryAuth,omitempty"` + PasswordAuth *string `json:"passwordAuth,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + TenantId *string `json:"tenantId,omitempty"` +} + +// AssignProperties_From_AuthConfig_STATUS populates our AuthConfig_STATUS from the provided source AuthConfig_STATUS +func (config *AuthConfig_STATUS) AssignProperties_From_AuthConfig_STATUS(source *v20221201s.AuthConfig_STATUS) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(source.PropertyBag) + + // ActiveDirectoryAuth + config.ActiveDirectoryAuth = genruntime.ClonePointerToString(source.ActiveDirectoryAuth) + + // PasswordAuth + config.PasswordAuth = genruntime.ClonePointerToString(source.PasswordAuth) + + // TenantId + config.TenantId = genruntime.ClonePointerToString(source.TenantId) + + // Update the property bag + if len(propertyBag) > 0 { + config.PropertyBag = propertyBag + } else { + config.PropertyBag = nil + } + + // Invoke the augmentConversionForAuthConfig_STATUS interface (if implemented) to customize the conversion + var configAsAny any = config + if augmentedConfig, ok := configAsAny.(augmentConversionForAuthConfig_STATUS); ok { + err := augmentedConfig.AssignPropertiesFrom(source) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesFrom() for conversion") + } + } + + // 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 *v20221201s.AuthConfig_STATUS) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(config.PropertyBag) + + // ActiveDirectoryAuth + destination.ActiveDirectoryAuth = genruntime.ClonePointerToString(config.ActiveDirectoryAuth) + + // PasswordAuth + destination.PasswordAuth = genruntime.ClonePointerToString(config.PasswordAuth) + + // TenantId + destination.TenantId = genruntime.ClonePointerToString(config.TenantId) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // Invoke the augmentConversionForAuthConfig_STATUS interface (if implemented) to customize the conversion + var configAsAny any = config + if augmentedConfig, ok := configAsAny.(augmentConversionForAuthConfig_STATUS); ok { + err := augmentedConfig.AssignPropertiesTo(destination) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesTo() for conversion") + } + } + + // No error + return nil +} + +// Storage version of v1api20230601preview.Backup +// Backup properties of a server +type Backup struct { + BackupRetentionDays *int `json:"backupRetentionDays,omitempty"` + GeoRedundantBackup *string `json:"geoRedundantBackup,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` +} + +// AssignProperties_From_Backup populates our Backup from the provided source Backup +func (backup *Backup) AssignProperties_From_Backup(source *v20221201s.Backup) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(source.PropertyBag) + + // BackupRetentionDays + backup.BackupRetentionDays = genruntime.ClonePointerToInt(source.BackupRetentionDays) + + // GeoRedundantBackup + backup.GeoRedundantBackup = genruntime.ClonePointerToString(source.GeoRedundantBackup) + + // Update the property bag + if len(propertyBag) > 0 { + backup.PropertyBag = propertyBag + } else { + backup.PropertyBag = nil + } + + // Invoke the augmentConversionForBackup interface (if implemented) to customize the conversion + var backupAsAny any = backup + if augmentedBackup, ok := backupAsAny.(augmentConversionForBackup); ok { + err := augmentedBackup.AssignPropertiesFrom(source) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesFrom() for conversion") + } + } + + // No error + return nil +} + +// AssignProperties_To_Backup populates the provided destination Backup from our Backup +func (backup *Backup) AssignProperties_To_Backup(destination *v20221201s.Backup) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(backup.PropertyBag) + + // BackupRetentionDays + destination.BackupRetentionDays = genruntime.ClonePointerToInt(backup.BackupRetentionDays) + + // GeoRedundantBackup + destination.GeoRedundantBackup = genruntime.ClonePointerToString(backup.GeoRedundantBackup) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // Invoke the augmentConversionForBackup interface (if implemented) to customize the conversion + var backupAsAny any = backup + if augmentedBackup, ok := backupAsAny.(augmentConversionForBackup); ok { + err := augmentedBackup.AssignPropertiesTo(destination) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesTo() for conversion") + } + } + + // No error + return nil +} + +// Storage version of v1api20230601preview.Backup_STATUS +// Backup properties of a server +type Backup_STATUS struct { + BackupRetentionDays *int `json:"backupRetentionDays,omitempty"` + EarliestRestoreDate *string `json:"earliestRestoreDate,omitempty"` + GeoRedundantBackup *string `json:"geoRedundantBackup,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` +} + +// AssignProperties_From_Backup_STATUS populates our Backup_STATUS from the provided source Backup_STATUS +func (backup *Backup_STATUS) AssignProperties_From_Backup_STATUS(source *v20221201s.Backup_STATUS) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(source.PropertyBag) + + // BackupRetentionDays + backup.BackupRetentionDays = genruntime.ClonePointerToInt(source.BackupRetentionDays) + + // EarliestRestoreDate + backup.EarliestRestoreDate = genruntime.ClonePointerToString(source.EarliestRestoreDate) + + // GeoRedundantBackup + backup.GeoRedundantBackup = genruntime.ClonePointerToString(source.GeoRedundantBackup) + + // Update the property bag + if len(propertyBag) > 0 { + backup.PropertyBag = propertyBag + } else { + backup.PropertyBag = nil + } + + // Invoke the augmentConversionForBackup_STATUS interface (if implemented) to customize the conversion + var backupAsAny any = backup + if augmentedBackup, ok := backupAsAny.(augmentConversionForBackup_STATUS); ok { + err := augmentedBackup.AssignPropertiesFrom(source) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesFrom() for conversion") + } + } + + // No error + return nil +} + +// AssignProperties_To_Backup_STATUS populates the provided destination Backup_STATUS from our Backup_STATUS +func (backup *Backup_STATUS) AssignProperties_To_Backup_STATUS(destination *v20221201s.Backup_STATUS) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(backup.PropertyBag) + + // BackupRetentionDays + destination.BackupRetentionDays = genruntime.ClonePointerToInt(backup.BackupRetentionDays) + + // EarliestRestoreDate + destination.EarliestRestoreDate = genruntime.ClonePointerToString(backup.EarliestRestoreDate) + + // GeoRedundantBackup + destination.GeoRedundantBackup = genruntime.ClonePointerToString(backup.GeoRedundantBackup) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // Invoke the augmentConversionForBackup_STATUS interface (if implemented) to customize the conversion + var backupAsAny any = backup + if augmentedBackup, ok := backupAsAny.(augmentConversionForBackup_STATUS); ok { + err := augmentedBackup.AssignPropertiesTo(destination) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesTo() for conversion") + } + } + + // No error + return nil +} + +// Storage version of v1api20230601preview.DataEncryption +// Data encryption properties of a server +type DataEncryption struct { + GeoBackupEncryptionKeyStatus *string `json:"geoBackupEncryptionKeyStatus,omitempty"` + GeoBackupKeyURI *string `json:"geoBackupKeyURI,omitempty"` + + // GeoBackupUserAssignedIdentityReference: Resource Id for the User assigned identity to be used for data encryption for + // geo-backup of server. + GeoBackupUserAssignedIdentityReference *genruntime.ResourceReference `armReference:"GeoBackupUserAssignedIdentityId" json:"geoBackupUserAssignedIdentityReference,omitempty"` + PrimaryEncryptionKeyStatus *string `json:"primaryEncryptionKeyStatus,omitempty"` + PrimaryKeyURI *string `json:"primaryKeyURI,omitempty"` + + // PrimaryUserAssignedIdentityReference: Resource Id for the User assigned identity to be used for data encryption of the + // primary server. + PrimaryUserAssignedIdentityReference *genruntime.ResourceReference `armReference:"PrimaryUserAssignedIdentityId" json:"primaryUserAssignedIdentityReference,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + Type *string `json:"type,omitempty"` +} + +// AssignProperties_From_DataEncryption populates our DataEncryption from the provided source DataEncryption +func (encryption *DataEncryption) AssignProperties_From_DataEncryption(source *v20221201s.DataEncryption) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(source.PropertyBag) + + // GeoBackupEncryptionKeyStatus + if propertyBag.Contains("GeoBackupEncryptionKeyStatus") { + var geoBackupEncryptionKeyStatus string + err := propertyBag.Pull("GeoBackupEncryptionKeyStatus", &geoBackupEncryptionKeyStatus) + if err != nil { + return errors.Wrap(err, "pulling 'GeoBackupEncryptionKeyStatus' from propertyBag") + } + + encryption.GeoBackupEncryptionKeyStatus = &geoBackupEncryptionKeyStatus + } else { + encryption.GeoBackupEncryptionKeyStatus = nil + } + + // GeoBackupKeyURI + if propertyBag.Contains("GeoBackupKeyURI") { + var geoBackupKeyURI string + err := propertyBag.Pull("GeoBackupKeyURI", &geoBackupKeyURI) + if err != nil { + return errors.Wrap(err, "pulling 'GeoBackupKeyURI' from propertyBag") + } + + encryption.GeoBackupKeyURI = &geoBackupKeyURI + } else { + encryption.GeoBackupKeyURI = nil + } + + // GeoBackupUserAssignedIdentityReference + if propertyBag.Contains("GeoBackupUserAssignedIdentityReference") { + var geoBackupUserAssignedIdentityReference genruntime.ResourceReference + err := propertyBag.Pull("GeoBackupUserAssignedIdentityReference", &geoBackupUserAssignedIdentityReference) + if err != nil { + return errors.Wrap(err, "pulling 'GeoBackupUserAssignedIdentityReference' from propertyBag") + } + + encryption.GeoBackupUserAssignedIdentityReference = &geoBackupUserAssignedIdentityReference + } else { + encryption.GeoBackupUserAssignedIdentityReference = nil + } + + // PrimaryEncryptionKeyStatus + if propertyBag.Contains("PrimaryEncryptionKeyStatus") { + var primaryEncryptionKeyStatus string + err := propertyBag.Pull("PrimaryEncryptionKeyStatus", &primaryEncryptionKeyStatus) + if err != nil { + return errors.Wrap(err, "pulling 'PrimaryEncryptionKeyStatus' from propertyBag") + } + + encryption.PrimaryEncryptionKeyStatus = &primaryEncryptionKeyStatus + } else { + encryption.PrimaryEncryptionKeyStatus = nil + } + + // PrimaryKeyURI + encryption.PrimaryKeyURI = genruntime.ClonePointerToString(source.PrimaryKeyURI) + + // PrimaryUserAssignedIdentityReference + if source.PrimaryUserAssignedIdentityReference != nil { + primaryUserAssignedIdentityReference := source.PrimaryUserAssignedIdentityReference.Copy() + encryption.PrimaryUserAssignedIdentityReference = &primaryUserAssignedIdentityReference + } else { + encryption.PrimaryUserAssignedIdentityReference = nil + } + + // Type + encryption.Type = genruntime.ClonePointerToString(source.Type) + + // Update the property bag + if len(propertyBag) > 0 { + encryption.PropertyBag = propertyBag + } else { + encryption.PropertyBag = nil + } + + // Invoke the augmentConversionForDataEncryption interface (if implemented) to customize the conversion + var encryptionAsAny any = encryption + if augmentedEncryption, ok := encryptionAsAny.(augmentConversionForDataEncryption); ok { + err := augmentedEncryption.AssignPropertiesFrom(source) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesFrom() for conversion") + } + } + + // No error + return nil +} + +// AssignProperties_To_DataEncryption populates the provided destination DataEncryption from our DataEncryption +func (encryption *DataEncryption) AssignProperties_To_DataEncryption(destination *v20221201s.DataEncryption) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(encryption.PropertyBag) + + // GeoBackupEncryptionKeyStatus + if encryption.GeoBackupEncryptionKeyStatus != nil { + propertyBag.Add("GeoBackupEncryptionKeyStatus", *encryption.GeoBackupEncryptionKeyStatus) + } else { + propertyBag.Remove("GeoBackupEncryptionKeyStatus") + } + + // GeoBackupKeyURI + if encryption.GeoBackupKeyURI != nil { + propertyBag.Add("GeoBackupKeyURI", *encryption.GeoBackupKeyURI) + } else { + propertyBag.Remove("GeoBackupKeyURI") + } + + // GeoBackupUserAssignedIdentityReference + if encryption.GeoBackupUserAssignedIdentityReference != nil { + propertyBag.Add("GeoBackupUserAssignedIdentityReference", *encryption.GeoBackupUserAssignedIdentityReference) + } else { + propertyBag.Remove("GeoBackupUserAssignedIdentityReference") + } + + // PrimaryEncryptionKeyStatus + if encryption.PrimaryEncryptionKeyStatus != nil { + propertyBag.Add("PrimaryEncryptionKeyStatus", *encryption.PrimaryEncryptionKeyStatus) + } else { + propertyBag.Remove("PrimaryEncryptionKeyStatus") + } + + // PrimaryKeyURI + destination.PrimaryKeyURI = genruntime.ClonePointerToString(encryption.PrimaryKeyURI) + + // PrimaryUserAssignedIdentityReference + if encryption.PrimaryUserAssignedIdentityReference != nil { + primaryUserAssignedIdentityReference := encryption.PrimaryUserAssignedIdentityReference.Copy() + destination.PrimaryUserAssignedIdentityReference = &primaryUserAssignedIdentityReference + } else { + destination.PrimaryUserAssignedIdentityReference = nil + } + + // Type + destination.Type = genruntime.ClonePointerToString(encryption.Type) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // Invoke the augmentConversionForDataEncryption interface (if implemented) to customize the conversion + var encryptionAsAny any = encryption + if augmentedEncryption, ok := encryptionAsAny.(augmentConversionForDataEncryption); ok { + err := augmentedEncryption.AssignPropertiesTo(destination) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesTo() for conversion") + } + } + + // No error + return nil +} + +// Storage version of v1api20230601preview.DataEncryption_STATUS +// Data encryption properties of a server +type DataEncryption_STATUS struct { + GeoBackupEncryptionKeyStatus *string `json:"geoBackupEncryptionKeyStatus,omitempty"` + GeoBackupKeyURI *string `json:"geoBackupKeyURI,omitempty"` + GeoBackupUserAssignedIdentityId *string `json:"geoBackupUserAssignedIdentityId,omitempty"` + PrimaryEncryptionKeyStatus *string `json:"primaryEncryptionKeyStatus,omitempty"` + PrimaryKeyURI *string `json:"primaryKeyURI,omitempty"` + PrimaryUserAssignedIdentityId *string `json:"primaryUserAssignedIdentityId,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + Type *string `json:"type,omitempty"` +} + +// AssignProperties_From_DataEncryption_STATUS populates our DataEncryption_STATUS from the provided source DataEncryption_STATUS +func (encryption *DataEncryption_STATUS) AssignProperties_From_DataEncryption_STATUS(source *v20221201s.DataEncryption_STATUS) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(source.PropertyBag) + + // GeoBackupEncryptionKeyStatus + if propertyBag.Contains("GeoBackupEncryptionKeyStatus") { + var geoBackupEncryptionKeyStatus string + err := propertyBag.Pull("GeoBackupEncryptionKeyStatus", &geoBackupEncryptionKeyStatus) + if err != nil { + return errors.Wrap(err, "pulling 'GeoBackupEncryptionKeyStatus' from propertyBag") + } + + encryption.GeoBackupEncryptionKeyStatus = &geoBackupEncryptionKeyStatus + } else { + encryption.GeoBackupEncryptionKeyStatus = nil + } + + // GeoBackupKeyURI + if propertyBag.Contains("GeoBackupKeyURI") { + var geoBackupKeyURI string + err := propertyBag.Pull("GeoBackupKeyURI", &geoBackupKeyURI) + if err != nil { + return errors.Wrap(err, "pulling 'GeoBackupKeyURI' from propertyBag") + } + + encryption.GeoBackupKeyURI = &geoBackupKeyURI + } else { + encryption.GeoBackupKeyURI = nil + } + + // GeoBackupUserAssignedIdentityId + if propertyBag.Contains("GeoBackupUserAssignedIdentityId") { + var geoBackupUserAssignedIdentityId string + err := propertyBag.Pull("GeoBackupUserAssignedIdentityId", &geoBackupUserAssignedIdentityId) + if err != nil { + return errors.Wrap(err, "pulling 'GeoBackupUserAssignedIdentityId' from propertyBag") + } + + encryption.GeoBackupUserAssignedIdentityId = &geoBackupUserAssignedIdentityId + } else { + encryption.GeoBackupUserAssignedIdentityId = nil + } + + // PrimaryEncryptionKeyStatus + if propertyBag.Contains("PrimaryEncryptionKeyStatus") { + var primaryEncryptionKeyStatus string + err := propertyBag.Pull("PrimaryEncryptionKeyStatus", &primaryEncryptionKeyStatus) + if err != nil { + return errors.Wrap(err, "pulling 'PrimaryEncryptionKeyStatus' from propertyBag") + } + + encryption.PrimaryEncryptionKeyStatus = &primaryEncryptionKeyStatus + } else { + encryption.PrimaryEncryptionKeyStatus = nil + } + + // PrimaryKeyURI + encryption.PrimaryKeyURI = genruntime.ClonePointerToString(source.PrimaryKeyURI) + + // PrimaryUserAssignedIdentityId + encryption.PrimaryUserAssignedIdentityId = genruntime.ClonePointerToString(source.PrimaryUserAssignedIdentityId) + + // Type + encryption.Type = genruntime.ClonePointerToString(source.Type) + + // Update the property bag + if len(propertyBag) > 0 { + encryption.PropertyBag = propertyBag + } else { + encryption.PropertyBag = nil + } + + // Invoke the augmentConversionForDataEncryption_STATUS interface (if implemented) to customize the conversion + var encryptionAsAny any = encryption + if augmentedEncryption, ok := encryptionAsAny.(augmentConversionForDataEncryption_STATUS); ok { + err := augmentedEncryption.AssignPropertiesFrom(source) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesFrom() for conversion") + } + } + + // No error + return nil +} + +// AssignProperties_To_DataEncryption_STATUS populates the provided destination DataEncryption_STATUS from our DataEncryption_STATUS +func (encryption *DataEncryption_STATUS) AssignProperties_To_DataEncryption_STATUS(destination *v20221201s.DataEncryption_STATUS) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(encryption.PropertyBag) + + // GeoBackupEncryptionKeyStatus + if encryption.GeoBackupEncryptionKeyStatus != nil { + propertyBag.Add("GeoBackupEncryptionKeyStatus", *encryption.GeoBackupEncryptionKeyStatus) + } else { + propertyBag.Remove("GeoBackupEncryptionKeyStatus") + } + + // GeoBackupKeyURI + if encryption.GeoBackupKeyURI != nil { + propertyBag.Add("GeoBackupKeyURI", *encryption.GeoBackupKeyURI) + } else { + propertyBag.Remove("GeoBackupKeyURI") + } + + // GeoBackupUserAssignedIdentityId + if encryption.GeoBackupUserAssignedIdentityId != nil { + propertyBag.Add("GeoBackupUserAssignedIdentityId", *encryption.GeoBackupUserAssignedIdentityId) + } else { + propertyBag.Remove("GeoBackupUserAssignedIdentityId") + } + + // PrimaryEncryptionKeyStatus + if encryption.PrimaryEncryptionKeyStatus != nil { + propertyBag.Add("PrimaryEncryptionKeyStatus", *encryption.PrimaryEncryptionKeyStatus) + } else { + propertyBag.Remove("PrimaryEncryptionKeyStatus") + } + + // PrimaryKeyURI + destination.PrimaryKeyURI = genruntime.ClonePointerToString(encryption.PrimaryKeyURI) + + // PrimaryUserAssignedIdentityId + destination.PrimaryUserAssignedIdentityId = genruntime.ClonePointerToString(encryption.PrimaryUserAssignedIdentityId) + + // Type + destination.Type = genruntime.ClonePointerToString(encryption.Type) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // Invoke the augmentConversionForDataEncryption_STATUS interface (if implemented) to customize the conversion + var encryptionAsAny any = encryption + if augmentedEncryption, ok := encryptionAsAny.(augmentConversionForDataEncryption_STATUS); ok { + err := augmentedEncryption.AssignPropertiesTo(destination) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesTo() for conversion") + } + } + + // No error + return nil +} + +// Storage version of v1api20230601preview.FlexibleServerOperatorSpec +// Details for configuring operator behavior. Fields in this struct are interpreted by the operator directly rather than being passed to Azure +type FlexibleServerOperatorSpec struct { + ConfigMaps *FlexibleServerOperatorConfigMaps `json:"configMaps,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + Secrets *FlexibleServerOperatorSecrets `json:"secrets,omitempty"` +} + +// AssignProperties_From_FlexibleServerOperatorSpec populates our FlexibleServerOperatorSpec from the provided source FlexibleServerOperatorSpec +func (operator *FlexibleServerOperatorSpec) AssignProperties_From_FlexibleServerOperatorSpec(source *v20221201s.FlexibleServerOperatorSpec) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(source.PropertyBag) + + // ConfigMaps + if source.ConfigMaps != nil { + var configMap FlexibleServerOperatorConfigMaps + err := configMap.AssignProperties_From_FlexibleServerOperatorConfigMaps(source.ConfigMaps) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_FlexibleServerOperatorConfigMaps() to populate field ConfigMaps") + } + operator.ConfigMaps = &configMap + } else { + operator.ConfigMaps = nil + } + + // Secrets + if source.Secrets != nil { + var secret FlexibleServerOperatorSecrets + err := secret.AssignProperties_From_FlexibleServerOperatorSecrets(source.Secrets) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_FlexibleServerOperatorSecrets() to populate field Secrets") + } + operator.Secrets = &secret + } else { + operator.Secrets = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + operator.PropertyBag = propertyBag + } else { + operator.PropertyBag = nil + } + + // Invoke the augmentConversionForFlexibleServerOperatorSpec interface (if implemented) to customize the conversion + var operatorAsAny any = operator + if augmentedOperator, ok := operatorAsAny.(augmentConversionForFlexibleServerOperatorSpec); ok { + err := augmentedOperator.AssignPropertiesFrom(source) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesFrom() for conversion") + } + } + + // No error + return nil +} + +// AssignProperties_To_FlexibleServerOperatorSpec populates the provided destination FlexibleServerOperatorSpec from our FlexibleServerOperatorSpec +func (operator *FlexibleServerOperatorSpec) AssignProperties_To_FlexibleServerOperatorSpec(destination *v20221201s.FlexibleServerOperatorSpec) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(operator.PropertyBag) + + // ConfigMaps + if operator.ConfigMaps != nil { + var configMap v20221201s.FlexibleServerOperatorConfigMaps + err := operator.ConfigMaps.AssignProperties_To_FlexibleServerOperatorConfigMaps(&configMap) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_FlexibleServerOperatorConfigMaps() to populate field ConfigMaps") + } + destination.ConfigMaps = &configMap + } else { + destination.ConfigMaps = nil + } + + // Secrets + if operator.Secrets != nil { + var secret v20221201s.FlexibleServerOperatorSecrets + err := operator.Secrets.AssignProperties_To_FlexibleServerOperatorSecrets(&secret) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_FlexibleServerOperatorSecrets() to populate field Secrets") + } + destination.Secrets = &secret + } else { + destination.Secrets = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // Invoke the augmentConversionForFlexibleServerOperatorSpec interface (if implemented) to customize the conversion + var operatorAsAny any = operator + if augmentedOperator, ok := operatorAsAny.(augmentConversionForFlexibleServerOperatorSpec); ok { + err := augmentedOperator.AssignPropertiesTo(destination) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesTo() for conversion") + } + } + + // No error + return nil +} + +// Storage version of v1api20230601preview.HighAvailability +// High availability properties of a server +type HighAvailability struct { + Mode *string `json:"mode,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + StandbyAvailabilityZone *string `json:"standbyAvailabilityZone,omitempty"` +} + +// AssignProperties_From_HighAvailability populates our HighAvailability from the provided source HighAvailability +func (availability *HighAvailability) AssignProperties_From_HighAvailability(source *v20221201s.HighAvailability) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(source.PropertyBag) + + // Mode + availability.Mode = genruntime.ClonePointerToString(source.Mode) + + // StandbyAvailabilityZone + availability.StandbyAvailabilityZone = genruntime.ClonePointerToString(source.StandbyAvailabilityZone) + + // Update the property bag + if len(propertyBag) > 0 { + availability.PropertyBag = propertyBag + } else { + availability.PropertyBag = nil + } + + // Invoke the augmentConversionForHighAvailability interface (if implemented) to customize the conversion + var availabilityAsAny any = availability + if augmentedAvailability, ok := availabilityAsAny.(augmentConversionForHighAvailability); ok { + err := augmentedAvailability.AssignPropertiesFrom(source) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesFrom() for conversion") + } + } + + // No error + return nil +} + +// AssignProperties_To_HighAvailability populates the provided destination HighAvailability from our HighAvailability +func (availability *HighAvailability) AssignProperties_To_HighAvailability(destination *v20221201s.HighAvailability) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(availability.PropertyBag) + + // Mode + destination.Mode = genruntime.ClonePointerToString(availability.Mode) + + // StandbyAvailabilityZone + destination.StandbyAvailabilityZone = genruntime.ClonePointerToString(availability.StandbyAvailabilityZone) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // Invoke the augmentConversionForHighAvailability interface (if implemented) to customize the conversion + var availabilityAsAny any = availability + if augmentedAvailability, ok := availabilityAsAny.(augmentConversionForHighAvailability); ok { + err := augmentedAvailability.AssignPropertiesTo(destination) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesTo() for conversion") + } + } + + // No error + return nil +} + +// Storage version of v1api20230601preview.HighAvailability_STATUS +// High availability properties of a server +type HighAvailability_STATUS struct { + Mode *string `json:"mode,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + StandbyAvailabilityZone *string `json:"standbyAvailabilityZone,omitempty"` + State *string `json:"state,omitempty"` +} + +// AssignProperties_From_HighAvailability_STATUS populates our HighAvailability_STATUS from the provided source HighAvailability_STATUS +func (availability *HighAvailability_STATUS) AssignProperties_From_HighAvailability_STATUS(source *v20221201s.HighAvailability_STATUS) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(source.PropertyBag) + + // Mode + availability.Mode = genruntime.ClonePointerToString(source.Mode) + + // StandbyAvailabilityZone + availability.StandbyAvailabilityZone = genruntime.ClonePointerToString(source.StandbyAvailabilityZone) + + // State + availability.State = genruntime.ClonePointerToString(source.State) + + // Update the property bag + if len(propertyBag) > 0 { + availability.PropertyBag = propertyBag + } else { + availability.PropertyBag = nil + } + + // Invoke the augmentConversionForHighAvailability_STATUS interface (if implemented) to customize the conversion + var availabilityAsAny any = availability + if augmentedAvailability, ok := availabilityAsAny.(augmentConversionForHighAvailability_STATUS); ok { + err := augmentedAvailability.AssignPropertiesFrom(source) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesFrom() for conversion") + } + } + + // No error + return nil +} + +// AssignProperties_To_HighAvailability_STATUS populates the provided destination HighAvailability_STATUS from our HighAvailability_STATUS +func (availability *HighAvailability_STATUS) AssignProperties_To_HighAvailability_STATUS(destination *v20221201s.HighAvailability_STATUS) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(availability.PropertyBag) + + // Mode + destination.Mode = genruntime.ClonePointerToString(availability.Mode) + + // StandbyAvailabilityZone + destination.StandbyAvailabilityZone = genruntime.ClonePointerToString(availability.StandbyAvailabilityZone) + + // State + destination.State = genruntime.ClonePointerToString(availability.State) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // Invoke the augmentConversionForHighAvailability_STATUS interface (if implemented) to customize the conversion + var availabilityAsAny any = availability + if augmentedAvailability, ok := availabilityAsAny.(augmentConversionForHighAvailability_STATUS); ok { + err := augmentedAvailability.AssignPropertiesTo(destination) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesTo() for conversion") + } + } + + // No error + return nil +} + +// Storage version of v1api20230601preview.MaintenanceWindow +// Maintenance window properties of a server. +type MaintenanceWindow struct { + CustomWindow *string `json:"customWindow,omitempty"` + DayOfWeek *int `json:"dayOfWeek,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + StartHour *int `json:"startHour,omitempty"` + StartMinute *int `json:"startMinute,omitempty"` +} + +// AssignProperties_From_MaintenanceWindow populates our MaintenanceWindow from the provided source MaintenanceWindow +func (window *MaintenanceWindow) AssignProperties_From_MaintenanceWindow(source *v20221201s.MaintenanceWindow) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(source.PropertyBag) + + // CustomWindow + window.CustomWindow = genruntime.ClonePointerToString(source.CustomWindow) + + // DayOfWeek + window.DayOfWeek = genruntime.ClonePointerToInt(source.DayOfWeek) + + // StartHour + window.StartHour = genruntime.ClonePointerToInt(source.StartHour) + + // StartMinute + window.StartMinute = genruntime.ClonePointerToInt(source.StartMinute) + + // Update the property bag + if len(propertyBag) > 0 { + window.PropertyBag = propertyBag + } else { + window.PropertyBag = nil + } + + // Invoke the augmentConversionForMaintenanceWindow interface (if implemented) to customize the conversion + var windowAsAny any = window + if augmentedWindow, ok := windowAsAny.(augmentConversionForMaintenanceWindow); ok { + err := augmentedWindow.AssignPropertiesFrom(source) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesFrom() for conversion") + } + } + + // No error + return nil +} + +// AssignProperties_To_MaintenanceWindow populates the provided destination MaintenanceWindow from our MaintenanceWindow +func (window *MaintenanceWindow) AssignProperties_To_MaintenanceWindow(destination *v20221201s.MaintenanceWindow) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(window.PropertyBag) + + // CustomWindow + destination.CustomWindow = genruntime.ClonePointerToString(window.CustomWindow) + + // DayOfWeek + destination.DayOfWeek = genruntime.ClonePointerToInt(window.DayOfWeek) + + // StartHour + destination.StartHour = genruntime.ClonePointerToInt(window.StartHour) + + // StartMinute + destination.StartMinute = genruntime.ClonePointerToInt(window.StartMinute) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // Invoke the augmentConversionForMaintenanceWindow interface (if implemented) to customize the conversion + var windowAsAny any = window + if augmentedWindow, ok := windowAsAny.(augmentConversionForMaintenanceWindow); ok { + err := augmentedWindow.AssignPropertiesTo(destination) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesTo() for conversion") + } + } + + // No error + return nil +} + +// Storage version of v1api20230601preview.MaintenanceWindow_STATUS +// Maintenance window properties of a server. +type MaintenanceWindow_STATUS struct { + CustomWindow *string `json:"customWindow,omitempty"` + DayOfWeek *int `json:"dayOfWeek,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + StartHour *int `json:"startHour,omitempty"` + StartMinute *int `json:"startMinute,omitempty"` +} + +// AssignProperties_From_MaintenanceWindow_STATUS populates our MaintenanceWindow_STATUS from the provided source MaintenanceWindow_STATUS +func (window *MaintenanceWindow_STATUS) AssignProperties_From_MaintenanceWindow_STATUS(source *v20221201s.MaintenanceWindow_STATUS) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(source.PropertyBag) + + // CustomWindow + window.CustomWindow = genruntime.ClonePointerToString(source.CustomWindow) + + // DayOfWeek + window.DayOfWeek = genruntime.ClonePointerToInt(source.DayOfWeek) + + // StartHour + window.StartHour = genruntime.ClonePointerToInt(source.StartHour) + + // StartMinute + window.StartMinute = genruntime.ClonePointerToInt(source.StartMinute) + + // Update the property bag + if len(propertyBag) > 0 { + window.PropertyBag = propertyBag + } else { + window.PropertyBag = nil + } + + // Invoke the augmentConversionForMaintenanceWindow_STATUS interface (if implemented) to customize the conversion + var windowAsAny any = window + if augmentedWindow, ok := windowAsAny.(augmentConversionForMaintenanceWindow_STATUS); ok { + err := augmentedWindow.AssignPropertiesFrom(source) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesFrom() for conversion") + } + } + + // No error + return nil +} + +// AssignProperties_To_MaintenanceWindow_STATUS populates the provided destination MaintenanceWindow_STATUS from our MaintenanceWindow_STATUS +func (window *MaintenanceWindow_STATUS) AssignProperties_To_MaintenanceWindow_STATUS(destination *v20221201s.MaintenanceWindow_STATUS) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(window.PropertyBag) + + // CustomWindow + destination.CustomWindow = genruntime.ClonePointerToString(window.CustomWindow) + + // DayOfWeek + destination.DayOfWeek = genruntime.ClonePointerToInt(window.DayOfWeek) + + // StartHour + destination.StartHour = genruntime.ClonePointerToInt(window.StartHour) + + // StartMinute + destination.StartMinute = genruntime.ClonePointerToInt(window.StartMinute) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // Invoke the augmentConversionForMaintenanceWindow_STATUS interface (if implemented) to customize the conversion + var windowAsAny any = window + if augmentedWindow, ok := windowAsAny.(augmentConversionForMaintenanceWindow_STATUS); ok { + err := augmentedWindow.AssignPropertiesTo(destination) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesTo() for conversion") + } + } + + // No error + return nil +} + +// Storage version of v1api20230601preview.Network +// Network properties of a server. +type Network struct { + // DelegatedSubnetResourceReference: Delegated subnet arm resource id. This is required to be passed during create, in case + // we want the server to be VNET injected, i.e. Private access server. During update, pass this only if we want to update + // the value for Private DNS zone. + DelegatedSubnetResourceReference *genruntime.ResourceReference `armReference:"DelegatedSubnetResourceId" json:"delegatedSubnetResourceReference,omitempty"` + + // PrivateDnsZoneArmResourceReference: Private dns zone arm resource id. This is required to be passed during create, in + // case we want the server to be VNET injected, i.e. Private access server. During update, pass this only if we want to + // update the value for Private DNS zone. + PrivateDnsZoneArmResourceReference *genruntime.ResourceReference `armReference:"PrivateDnsZoneArmResourceId" json:"privateDnsZoneArmResourceReference,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + PublicNetworkAccess *string `json:"publicNetworkAccess,omitempty"` +} + +// AssignProperties_From_Network populates our Network from the provided source Network +func (network *Network) AssignProperties_From_Network(source *v20221201s.Network) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(source.PropertyBag) + + // DelegatedSubnetResourceReference + if source.DelegatedSubnetResourceReference != nil { + delegatedSubnetResourceReference := source.DelegatedSubnetResourceReference.Copy() + network.DelegatedSubnetResourceReference = &delegatedSubnetResourceReference + } else { + network.DelegatedSubnetResourceReference = nil + } + + // PrivateDnsZoneArmResourceReference + if source.PrivateDnsZoneArmResourceReference != nil { + privateDnsZoneArmResourceReference := source.PrivateDnsZoneArmResourceReference.Copy() + network.PrivateDnsZoneArmResourceReference = &privateDnsZoneArmResourceReference + } else { + network.PrivateDnsZoneArmResourceReference = nil + } + + // PublicNetworkAccess + if propertyBag.Contains("PublicNetworkAccess") { + var publicNetworkAccess string + err := propertyBag.Pull("PublicNetworkAccess", &publicNetworkAccess) + if err != nil { + return errors.Wrap(err, "pulling 'PublicNetworkAccess' from propertyBag") + } + + network.PublicNetworkAccess = &publicNetworkAccess + } else { + network.PublicNetworkAccess = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + network.PropertyBag = propertyBag + } else { + network.PropertyBag = nil + } + + // Invoke the augmentConversionForNetwork interface (if implemented) to customize the conversion + var networkAsAny any = network + if augmentedNetwork, ok := networkAsAny.(augmentConversionForNetwork); ok { + err := augmentedNetwork.AssignPropertiesFrom(source) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesFrom() for conversion") + } + } + + // No error + return nil +} + +// AssignProperties_To_Network populates the provided destination Network from our Network +func (network *Network) AssignProperties_To_Network(destination *v20221201s.Network) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(network.PropertyBag) + + // DelegatedSubnetResourceReference + if network.DelegatedSubnetResourceReference != nil { + delegatedSubnetResourceReference := network.DelegatedSubnetResourceReference.Copy() + destination.DelegatedSubnetResourceReference = &delegatedSubnetResourceReference + } else { + destination.DelegatedSubnetResourceReference = nil + } + + // PrivateDnsZoneArmResourceReference + if network.PrivateDnsZoneArmResourceReference != nil { + privateDnsZoneArmResourceReference := network.PrivateDnsZoneArmResourceReference.Copy() + destination.PrivateDnsZoneArmResourceReference = &privateDnsZoneArmResourceReference + } else { + destination.PrivateDnsZoneArmResourceReference = nil + } + + // PublicNetworkAccess + if network.PublicNetworkAccess != nil { + propertyBag.Add("PublicNetworkAccess", *network.PublicNetworkAccess) + } else { + propertyBag.Remove("PublicNetworkAccess") + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // Invoke the augmentConversionForNetwork interface (if implemented) to customize the conversion + var networkAsAny any = network + if augmentedNetwork, ok := networkAsAny.(augmentConversionForNetwork); ok { + err := augmentedNetwork.AssignPropertiesTo(destination) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesTo() for conversion") + } + } + + // No error + return nil +} + +// Storage version of v1api20230601preview.Network_STATUS +// Network properties of a server. +type Network_STATUS struct { + DelegatedSubnetResourceId *string `json:"delegatedSubnetResourceId,omitempty"` + PrivateDnsZoneArmResourceId *string `json:"privateDnsZoneArmResourceId,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + PublicNetworkAccess *string `json:"publicNetworkAccess,omitempty"` +} + +// AssignProperties_From_Network_STATUS populates our Network_STATUS from the provided source Network_STATUS +func (network *Network_STATUS) AssignProperties_From_Network_STATUS(source *v20221201s.Network_STATUS) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(source.PropertyBag) + + // DelegatedSubnetResourceId + network.DelegatedSubnetResourceId = genruntime.ClonePointerToString(source.DelegatedSubnetResourceId) + + // PrivateDnsZoneArmResourceId + network.PrivateDnsZoneArmResourceId = genruntime.ClonePointerToString(source.PrivateDnsZoneArmResourceId) + + // PublicNetworkAccess + network.PublicNetworkAccess = genruntime.ClonePointerToString(source.PublicNetworkAccess) + + // Update the property bag + if len(propertyBag) > 0 { + network.PropertyBag = propertyBag + } else { + network.PropertyBag = nil + } + + // Invoke the augmentConversionForNetwork_STATUS interface (if implemented) to customize the conversion + var networkAsAny any = network + if augmentedNetwork, ok := networkAsAny.(augmentConversionForNetwork_STATUS); ok { + err := augmentedNetwork.AssignPropertiesFrom(source) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesFrom() for conversion") + } + } + + // No error + return nil +} + +// AssignProperties_To_Network_STATUS populates the provided destination Network_STATUS from our Network_STATUS +func (network *Network_STATUS) AssignProperties_To_Network_STATUS(destination *v20221201s.Network_STATUS) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(network.PropertyBag) + + // DelegatedSubnetResourceId + destination.DelegatedSubnetResourceId = genruntime.ClonePointerToString(network.DelegatedSubnetResourceId) + + // PrivateDnsZoneArmResourceId + destination.PrivateDnsZoneArmResourceId = genruntime.ClonePointerToString(network.PrivateDnsZoneArmResourceId) + + // PublicNetworkAccess + destination.PublicNetworkAccess = genruntime.ClonePointerToString(network.PublicNetworkAccess) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // Invoke the augmentConversionForNetwork_STATUS interface (if implemented) to customize the conversion + var networkAsAny any = network + if augmentedNetwork, ok := networkAsAny.(augmentConversionForNetwork_STATUS); ok { + err := augmentedNetwork.AssignPropertiesTo(destination) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesTo() for conversion") + } + } + + // No error + return nil +} + +// Storage version of v1api20230601preview.PrivateEndpointConnection_STATUS +// The private endpoint connection resource. +type PrivateEndpointConnection_STATUS struct { + Id *string `json:"id,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` +} + +// Storage version of v1api20230601preview.Replica +// Replica properties of a server +type Replica struct { + PromoteMode *string `json:"promoteMode,omitempty"` + PromoteOption *string `json:"promoteOption,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + Role *string `json:"role,omitempty"` +} + +// Storage version of v1api20230601preview.Replica_STATUS +// Replica properties of a server +type Replica_STATUS struct { + Capacity *int `json:"capacity,omitempty"` + PromoteMode *string `json:"promoteMode,omitempty"` + PromoteOption *string `json:"promoteOption,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + ReplicationState *string `json:"replicationState,omitempty"` + Role *string `json:"role,omitempty"` +} + +// Storage version of v1api20230601preview.Sku +// Sku information related properties of a server. +type Sku struct { + Name *string `json:"name,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + Tier *string `json:"tier,omitempty"` +} + +// AssignProperties_From_Sku populates our Sku from the provided source Sku +func (sku *Sku) AssignProperties_From_Sku(source *v20221201s.Sku) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(source.PropertyBag) + + // Name + sku.Name = genruntime.ClonePointerToString(source.Name) + + // Tier + sku.Tier = genruntime.ClonePointerToString(source.Tier) + + // Update the property bag + if len(propertyBag) > 0 { + sku.PropertyBag = propertyBag + } else { + sku.PropertyBag = nil + } + + // Invoke the augmentConversionForSku interface (if implemented) to customize the conversion + var skuAsAny any = sku + if augmentedSku, ok := skuAsAny.(augmentConversionForSku); ok { + err := augmentedSku.AssignPropertiesFrom(source) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesFrom() for conversion") + } + } + + // No error + return nil +} + +// AssignProperties_To_Sku populates the provided destination Sku from our Sku +func (sku *Sku) AssignProperties_To_Sku(destination *v20221201s.Sku) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(sku.PropertyBag) + + // Name + destination.Name = genruntime.ClonePointerToString(sku.Name) + + // Tier + destination.Tier = genruntime.ClonePointerToString(sku.Tier) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // Invoke the augmentConversionForSku interface (if implemented) to customize the conversion + var skuAsAny any = sku + if augmentedSku, ok := skuAsAny.(augmentConversionForSku); ok { + err := augmentedSku.AssignPropertiesTo(destination) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesTo() for conversion") + } + } + + // No error + return nil +} + +// Storage version of v1api20230601preview.Sku_STATUS +// Sku information related properties of a server. +type Sku_STATUS struct { + Name *string `json:"name,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + Tier *string `json:"tier,omitempty"` +} + +// AssignProperties_From_Sku_STATUS populates our Sku_STATUS from the provided source Sku_STATUS +func (sku *Sku_STATUS) AssignProperties_From_Sku_STATUS(source *v20221201s.Sku_STATUS) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(source.PropertyBag) + + // Name + sku.Name = genruntime.ClonePointerToString(source.Name) + + // Tier + sku.Tier = genruntime.ClonePointerToString(source.Tier) + + // Update the property bag + if len(propertyBag) > 0 { + sku.PropertyBag = propertyBag + } else { + sku.PropertyBag = nil + } + + // Invoke the augmentConversionForSku_STATUS interface (if implemented) to customize the conversion + var skuAsAny any = sku + if augmentedSku, ok := skuAsAny.(augmentConversionForSku_STATUS); ok { + err := augmentedSku.AssignPropertiesFrom(source) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesFrom() for conversion") + } + } + + // No error + return nil +} + +// AssignProperties_To_Sku_STATUS populates the provided destination Sku_STATUS from our Sku_STATUS +func (sku *Sku_STATUS) AssignProperties_To_Sku_STATUS(destination *v20221201s.Sku_STATUS) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(sku.PropertyBag) + + // Name + destination.Name = genruntime.ClonePointerToString(sku.Name) + + // Tier + destination.Tier = genruntime.ClonePointerToString(sku.Tier) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // Invoke the augmentConversionForSku_STATUS interface (if implemented) to customize the conversion + var skuAsAny any = sku + if augmentedSku, ok := skuAsAny.(augmentConversionForSku_STATUS); ok { + err := augmentedSku.AssignPropertiesTo(destination) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesTo() for conversion") + } + } + + // No error + return nil +} + +// Storage version of v1api20230601preview.Storage +// Storage properties of a server +type Storage struct { + AutoGrow *string `json:"autoGrow,omitempty"` + Iops *int `json:"iops,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + StorageSizeGB *int `json:"storageSizeGB,omitempty"` + Throughput *int `json:"throughput,omitempty"` + Tier *string `json:"tier,omitempty"` + Type *string `json:"type,omitempty"` +} + +// AssignProperties_From_Storage populates our Storage from the provided source Storage +func (storage *Storage) AssignProperties_From_Storage(source *v20221201s.Storage) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(source.PropertyBag) + + // AutoGrow + if propertyBag.Contains("AutoGrow") { + var autoGrow string + err := propertyBag.Pull("AutoGrow", &autoGrow) + if err != nil { + return errors.Wrap(err, "pulling 'AutoGrow' from propertyBag") + } + + storage.AutoGrow = &autoGrow + } else { + storage.AutoGrow = nil + } + + // Iops + if propertyBag.Contains("Iops") { + var iop int + err := propertyBag.Pull("Iops", &iop) + if err != nil { + return errors.Wrap(err, "pulling 'Iops' from propertyBag") + } + + storage.Iops = &iop + } else { + storage.Iops = nil + } + + // StorageSizeGB + storage.StorageSizeGB = genruntime.ClonePointerToInt(source.StorageSizeGB) + + // Throughput + if propertyBag.Contains("Throughput") { + var throughput int + err := propertyBag.Pull("Throughput", &throughput) + if err != nil { + return errors.Wrap(err, "pulling 'Throughput' from propertyBag") + } + + storage.Throughput = &throughput + } else { + storage.Throughput = nil + } + + // Tier + if propertyBag.Contains("Tier") { + var tier string + err := propertyBag.Pull("Tier", &tier) + if err != nil { + return errors.Wrap(err, "pulling 'Tier' from propertyBag") + } + + storage.Tier = &tier + } else { + storage.Tier = nil + } + + // Type + if propertyBag.Contains("Type") { + var typeVar string + err := propertyBag.Pull("Type", &typeVar) + if err != nil { + return errors.Wrap(err, "pulling 'Type' from propertyBag") + } + + storage.Type = &typeVar + } else { + storage.Type = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + storage.PropertyBag = propertyBag + } else { + storage.PropertyBag = nil + } + + // Invoke the augmentConversionForStorage interface (if implemented) to customize the conversion + var storageAsAny any = storage + if augmentedStorage, ok := storageAsAny.(augmentConversionForStorage); ok { + err := augmentedStorage.AssignPropertiesFrom(source) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesFrom() for conversion") + } + } + + // No error + return nil +} + +// AssignProperties_To_Storage populates the provided destination Storage from our Storage +func (storage *Storage) AssignProperties_To_Storage(destination *v20221201s.Storage) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(storage.PropertyBag) + + // AutoGrow + if storage.AutoGrow != nil { + propertyBag.Add("AutoGrow", *storage.AutoGrow) + } else { + propertyBag.Remove("AutoGrow") + } + + // Iops + if storage.Iops != nil { + propertyBag.Add("Iops", *storage.Iops) + } else { + propertyBag.Remove("Iops") + } + + // StorageSizeGB + destination.StorageSizeGB = genruntime.ClonePointerToInt(storage.StorageSizeGB) + + // Throughput + if storage.Throughput != nil { + propertyBag.Add("Throughput", *storage.Throughput) + } else { + propertyBag.Remove("Throughput") + } + + // Tier + if storage.Tier != nil { + propertyBag.Add("Tier", *storage.Tier) + } else { + propertyBag.Remove("Tier") + } + + // Type + if storage.Type != nil { + propertyBag.Add("Type", *storage.Type) + } else { + propertyBag.Remove("Type") + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // Invoke the augmentConversionForStorage interface (if implemented) to customize the conversion + var storageAsAny any = storage + if augmentedStorage, ok := storageAsAny.(augmentConversionForStorage); ok { + err := augmentedStorage.AssignPropertiesTo(destination) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesTo() for conversion") + } + } + + // No error + return nil +} + +// Storage version of v1api20230601preview.Storage_STATUS +// Storage properties of a server +type Storage_STATUS struct { + AutoGrow *string `json:"autoGrow,omitempty"` + Iops *int `json:"iops,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + StorageSizeGB *int `json:"storageSizeGB,omitempty"` + Throughput *int `json:"throughput,omitempty"` + Tier *string `json:"tier,omitempty"` + Type *string `json:"type,omitempty"` +} + +// AssignProperties_From_Storage_STATUS populates our Storage_STATUS from the provided source Storage_STATUS +func (storage *Storage_STATUS) AssignProperties_From_Storage_STATUS(source *v20221201s.Storage_STATUS) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(source.PropertyBag) + + // AutoGrow + if propertyBag.Contains("AutoGrow") { + var autoGrow string + err := propertyBag.Pull("AutoGrow", &autoGrow) + if err != nil { + return errors.Wrap(err, "pulling 'AutoGrow' from propertyBag") + } + + storage.AutoGrow = &autoGrow + } else { + storage.AutoGrow = nil + } + + // Iops + if propertyBag.Contains("Iops") { + var iop int + err := propertyBag.Pull("Iops", &iop) + if err != nil { + return errors.Wrap(err, "pulling 'Iops' from propertyBag") + } + + storage.Iops = &iop + } else { + storage.Iops = nil + } + + // StorageSizeGB + storage.StorageSizeGB = genruntime.ClonePointerToInt(source.StorageSizeGB) + + // Throughput + if propertyBag.Contains("Throughput") { + var throughput int + err := propertyBag.Pull("Throughput", &throughput) + if err != nil { + return errors.Wrap(err, "pulling 'Throughput' from propertyBag") + } + + storage.Throughput = &throughput + } else { + storage.Throughput = nil + } + + // Tier + if propertyBag.Contains("Tier") { + var tier string + err := propertyBag.Pull("Tier", &tier) + if err != nil { + return errors.Wrap(err, "pulling 'Tier' from propertyBag") + } + + storage.Tier = &tier + } else { + storage.Tier = nil + } + + // Type + if propertyBag.Contains("Type") { + var typeVar string + err := propertyBag.Pull("Type", &typeVar) + if err != nil { + return errors.Wrap(err, "pulling 'Type' from propertyBag") + } + + storage.Type = &typeVar + } else { + storage.Type = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + storage.PropertyBag = propertyBag + } else { + storage.PropertyBag = nil + } + + // Invoke the augmentConversionForStorage_STATUS interface (if implemented) to customize the conversion + var storageAsAny any = storage + if augmentedStorage, ok := storageAsAny.(augmentConversionForStorage_STATUS); ok { + err := augmentedStorage.AssignPropertiesFrom(source) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesFrom() for conversion") + } + } + + // No error + return nil +} + +// AssignProperties_To_Storage_STATUS populates the provided destination Storage_STATUS from our Storage_STATUS +func (storage *Storage_STATUS) AssignProperties_To_Storage_STATUS(destination *v20221201s.Storage_STATUS) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(storage.PropertyBag) + + // AutoGrow + if storage.AutoGrow != nil { + propertyBag.Add("AutoGrow", *storage.AutoGrow) + } else { + propertyBag.Remove("AutoGrow") + } + + // Iops + if storage.Iops != nil { + propertyBag.Add("Iops", *storage.Iops) + } else { + propertyBag.Remove("Iops") + } + + // StorageSizeGB + destination.StorageSizeGB = genruntime.ClonePointerToInt(storage.StorageSizeGB) + + // Throughput + if storage.Throughput != nil { + propertyBag.Add("Throughput", *storage.Throughput) + } else { + propertyBag.Remove("Throughput") + } + + // Tier + if storage.Tier != nil { + propertyBag.Add("Tier", *storage.Tier) + } else { + propertyBag.Remove("Tier") + } + + // Type + if storage.Type != nil { + propertyBag.Add("Type", *storage.Type) + } else { + propertyBag.Remove("Type") + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // Invoke the augmentConversionForStorage_STATUS interface (if implemented) to customize the conversion + var storageAsAny any = storage + if augmentedStorage, ok := storageAsAny.(augmentConversionForStorage_STATUS); ok { + err := augmentedStorage.AssignPropertiesTo(destination) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesTo() for conversion") + } + } + + // No error + return nil +} + +// Storage version of v1api20230601preview.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"` +} + +// AssignProperties_From_SystemData_STATUS populates our SystemData_STATUS from the provided source SystemData_STATUS +func (data *SystemData_STATUS) AssignProperties_From_SystemData_STATUS(source *v20221201s.SystemData_STATUS) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(source.PropertyBag) + + // CreatedAt + data.CreatedAt = genruntime.ClonePointerToString(source.CreatedAt) + + // CreatedBy + data.CreatedBy = genruntime.ClonePointerToString(source.CreatedBy) + + // CreatedByType + data.CreatedByType = genruntime.ClonePointerToString(source.CreatedByType) + + // LastModifiedAt + data.LastModifiedAt = genruntime.ClonePointerToString(source.LastModifiedAt) + + // LastModifiedBy + data.LastModifiedBy = genruntime.ClonePointerToString(source.LastModifiedBy) + + // LastModifiedByType + data.LastModifiedByType = genruntime.ClonePointerToString(source.LastModifiedByType) + + // Update the property bag + if len(propertyBag) > 0 { + data.PropertyBag = propertyBag + } else { + data.PropertyBag = nil + } + + // Invoke the augmentConversionForSystemData_STATUS interface (if implemented) to customize the conversion + var dataAsAny any = data + if augmentedData, ok := dataAsAny.(augmentConversionForSystemData_STATUS); ok { + err := augmentedData.AssignPropertiesFrom(source) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesFrom() for conversion") + } + } + + // 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 *v20221201s.SystemData_STATUS) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(data.PropertyBag) + + // CreatedAt + destination.CreatedAt = genruntime.ClonePointerToString(data.CreatedAt) + + // CreatedBy + destination.CreatedBy = genruntime.ClonePointerToString(data.CreatedBy) + + // CreatedByType + destination.CreatedByType = genruntime.ClonePointerToString(data.CreatedByType) + + // LastModifiedAt + destination.LastModifiedAt = genruntime.ClonePointerToString(data.LastModifiedAt) + + // LastModifiedBy + destination.LastModifiedBy = genruntime.ClonePointerToString(data.LastModifiedBy) + + // LastModifiedByType + destination.LastModifiedByType = genruntime.ClonePointerToString(data.LastModifiedByType) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // Invoke the augmentConversionForSystemData_STATUS interface (if implemented) to customize the conversion + var dataAsAny any = data + if augmentedData, ok := dataAsAny.(augmentConversionForSystemData_STATUS); ok { + err := augmentedData.AssignPropertiesTo(destination) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesTo() for conversion") + } + } + + // No error + return nil +} + +// Storage version of v1api20230601preview.UserAssignedIdentity +// Information describing the identities associated with this application. +type UserAssignedIdentity struct { + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + Type *string `json:"type,omitempty"` + UserAssignedIdentities []UserAssignedIdentityDetails `json:"userAssignedIdentities,omitempty"` +} + +// AssignProperties_From_UserAssignedIdentity populates our UserAssignedIdentity from the provided source UserAssignedIdentity +func (identity *UserAssignedIdentity) AssignProperties_From_UserAssignedIdentity(source *v20221201s.UserAssignedIdentity) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(source.PropertyBag) + + // Type + identity.Type = genruntime.ClonePointerToString(source.Type) + + // 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 errors.Wrap(err, "calling AssignProperties_From_UserAssignedIdentityDetails() to populate field UserAssignedIdentities") + } + userAssignedIdentityList[userAssignedIdentityIndex] = userAssignedIdentity + } + identity.UserAssignedIdentities = userAssignedIdentityList + } else { + identity.UserAssignedIdentities = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + identity.PropertyBag = propertyBag + } else { + identity.PropertyBag = nil + } + + // Invoke the augmentConversionForUserAssignedIdentity interface (if implemented) to customize the conversion + var identityAsAny any = identity + if augmentedIdentity, ok := identityAsAny.(augmentConversionForUserAssignedIdentity); ok { + err := augmentedIdentity.AssignPropertiesFrom(source) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesFrom() for conversion") + } + } + + // No error + return nil +} + +// AssignProperties_To_UserAssignedIdentity populates the provided destination UserAssignedIdentity from our UserAssignedIdentity +func (identity *UserAssignedIdentity) AssignProperties_To_UserAssignedIdentity(destination *v20221201s.UserAssignedIdentity) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(identity.PropertyBag) + + // Type + destination.Type = genruntime.ClonePointerToString(identity.Type) + + // UserAssignedIdentities + if identity.UserAssignedIdentities != nil { + userAssignedIdentityList := make([]v20221201s.UserAssignedIdentityDetails, len(identity.UserAssignedIdentities)) + for userAssignedIdentityIndex, userAssignedIdentityItem := range identity.UserAssignedIdentities { + // Shadow the loop variable to avoid aliasing + userAssignedIdentityItem := userAssignedIdentityItem + var userAssignedIdentity v20221201s.UserAssignedIdentityDetails + err := userAssignedIdentityItem.AssignProperties_To_UserAssignedIdentityDetails(&userAssignedIdentity) + if err != nil { + return errors.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 + } + + // Invoke the augmentConversionForUserAssignedIdentity interface (if implemented) to customize the conversion + var identityAsAny any = identity + if augmentedIdentity, ok := identityAsAny.(augmentConversionForUserAssignedIdentity); ok { + err := augmentedIdentity.AssignPropertiesTo(destination) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesTo() for conversion") + } + } + + // No error + return nil +} + +// Storage version of v1api20230601preview.UserAssignedIdentity_STATUS +// Information describing the identities associated with this application. +type UserAssignedIdentity_STATUS struct { + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + TenantId *string `json:"tenantId,omitempty"` + Type *string `json:"type,omitempty"` + UserAssignedIdentities map[string]UserIdentity_STATUS `json:"userAssignedIdentities,omitempty"` +} + +// AssignProperties_From_UserAssignedIdentity_STATUS populates our UserAssignedIdentity_STATUS from the provided source UserAssignedIdentity_STATUS +func (identity *UserAssignedIdentity_STATUS) AssignProperties_From_UserAssignedIdentity_STATUS(source *v20221201s.UserAssignedIdentity_STATUS) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(source.PropertyBag) + + // TenantId + identity.TenantId = genruntime.ClonePointerToString(source.TenantId) + + // Type + identity.Type = genruntime.ClonePointerToString(source.Type) + + // UserAssignedIdentities + if source.UserAssignedIdentities != nil { + userAssignedIdentityMap := make(map[string]UserIdentity_STATUS, len(source.UserAssignedIdentities)) + for userAssignedIdentityKey, userAssignedIdentityValue := range source.UserAssignedIdentities { + // Shadow the loop variable to avoid aliasing + userAssignedIdentityValue := userAssignedIdentityValue + var userAssignedIdentity UserIdentity_STATUS + err := userAssignedIdentity.AssignProperties_From_UserIdentity_STATUS(&userAssignedIdentityValue) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_UserIdentity_STATUS() to populate field UserAssignedIdentities") + } + userAssignedIdentityMap[userAssignedIdentityKey] = userAssignedIdentity + } + identity.UserAssignedIdentities = userAssignedIdentityMap + } else { + identity.UserAssignedIdentities = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + identity.PropertyBag = propertyBag + } else { + identity.PropertyBag = nil + } + + // Invoke the augmentConversionForUserAssignedIdentity_STATUS interface (if implemented) to customize the conversion + var identityAsAny any = identity + if augmentedIdentity, ok := identityAsAny.(augmentConversionForUserAssignedIdentity_STATUS); ok { + err := augmentedIdentity.AssignPropertiesFrom(source) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesFrom() for conversion") + } + } + + // 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 *v20221201s.UserAssignedIdentity_STATUS) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(identity.PropertyBag) + + // TenantId + destination.TenantId = genruntime.ClonePointerToString(identity.TenantId) + + // Type + destination.Type = genruntime.ClonePointerToString(identity.Type) + + // UserAssignedIdentities + if identity.UserAssignedIdentities != nil { + userAssignedIdentityMap := make(map[string]v20221201s.UserIdentity_STATUS, len(identity.UserAssignedIdentities)) + for userAssignedIdentityKey, userAssignedIdentityValue := range identity.UserAssignedIdentities { + // Shadow the loop variable to avoid aliasing + userAssignedIdentityValue := userAssignedIdentityValue + var userAssignedIdentity v20221201s.UserIdentity_STATUS + err := userAssignedIdentityValue.AssignProperties_To_UserIdentity_STATUS(&userAssignedIdentity) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_UserIdentity_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 + } + + // Invoke the augmentConversionForUserAssignedIdentity_STATUS interface (if implemented) to customize the conversion + var identityAsAny any = identity + if augmentedIdentity, ok := identityAsAny.(augmentConversionForUserAssignedIdentity_STATUS); ok { + err := augmentedIdentity.AssignPropertiesTo(destination) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesTo() for conversion") + } + } + + // No error + return nil +} + +type augmentConversionForAuthConfig interface { + AssignPropertiesFrom(src *v20221201s.AuthConfig) error + AssignPropertiesTo(dst *v20221201s.AuthConfig) error +} + +type augmentConversionForAuthConfig_STATUS interface { + AssignPropertiesFrom(src *v20221201s.AuthConfig_STATUS) error + AssignPropertiesTo(dst *v20221201s.AuthConfig_STATUS) error +} + +type augmentConversionForBackup interface { + AssignPropertiesFrom(src *v20221201s.Backup) error + AssignPropertiesTo(dst *v20221201s.Backup) error +} + +type augmentConversionForBackup_STATUS interface { + AssignPropertiesFrom(src *v20221201s.Backup_STATUS) error + AssignPropertiesTo(dst *v20221201s.Backup_STATUS) error +} + +type augmentConversionForDataEncryption interface { + AssignPropertiesFrom(src *v20221201s.DataEncryption) error + AssignPropertiesTo(dst *v20221201s.DataEncryption) error +} + +type augmentConversionForDataEncryption_STATUS interface { + AssignPropertiesFrom(src *v20221201s.DataEncryption_STATUS) error + AssignPropertiesTo(dst *v20221201s.DataEncryption_STATUS) error +} + +type augmentConversionForFlexibleServerOperatorSpec interface { + AssignPropertiesFrom(src *v20221201s.FlexibleServerOperatorSpec) error + AssignPropertiesTo(dst *v20221201s.FlexibleServerOperatorSpec) error +} + +type augmentConversionForHighAvailability interface { + AssignPropertiesFrom(src *v20221201s.HighAvailability) error + AssignPropertiesTo(dst *v20221201s.HighAvailability) error +} + +type augmentConversionForHighAvailability_STATUS interface { + AssignPropertiesFrom(src *v20221201s.HighAvailability_STATUS) error + AssignPropertiesTo(dst *v20221201s.HighAvailability_STATUS) error +} + +type augmentConversionForMaintenanceWindow interface { + AssignPropertiesFrom(src *v20221201s.MaintenanceWindow) error + AssignPropertiesTo(dst *v20221201s.MaintenanceWindow) error +} + +type augmentConversionForMaintenanceWindow_STATUS interface { + AssignPropertiesFrom(src *v20221201s.MaintenanceWindow_STATUS) error + AssignPropertiesTo(dst *v20221201s.MaintenanceWindow_STATUS) error +} + +type augmentConversionForNetwork interface { + AssignPropertiesFrom(src *v20221201s.Network) error + AssignPropertiesTo(dst *v20221201s.Network) error +} + +type augmentConversionForNetwork_STATUS interface { + AssignPropertiesFrom(src *v20221201s.Network_STATUS) error + AssignPropertiesTo(dst *v20221201s.Network_STATUS) error +} + +type augmentConversionForSku interface { + AssignPropertiesFrom(src *v20221201s.Sku) error + AssignPropertiesTo(dst *v20221201s.Sku) error +} + +type augmentConversionForSku_STATUS interface { + AssignPropertiesFrom(src *v20221201s.Sku_STATUS) error + AssignPropertiesTo(dst *v20221201s.Sku_STATUS) error +} + +type augmentConversionForStorage interface { + AssignPropertiesFrom(src *v20221201s.Storage) error + AssignPropertiesTo(dst *v20221201s.Storage) error +} + +type augmentConversionForStorage_STATUS interface { + AssignPropertiesFrom(src *v20221201s.Storage_STATUS) error + AssignPropertiesTo(dst *v20221201s.Storage_STATUS) error +} + +type augmentConversionForSystemData_STATUS interface { + AssignPropertiesFrom(src *v20221201s.SystemData_STATUS) error + AssignPropertiesTo(dst *v20221201s.SystemData_STATUS) error +} + +type augmentConversionForUserAssignedIdentity interface { + AssignPropertiesFrom(src *v20221201s.UserAssignedIdentity) error + AssignPropertiesTo(dst *v20221201s.UserAssignedIdentity) error +} + +type augmentConversionForUserAssignedIdentity_STATUS interface { + AssignPropertiesFrom(src *v20221201s.UserAssignedIdentity_STATUS) error + AssignPropertiesTo(dst *v20221201s.UserAssignedIdentity_STATUS) error +} + +// Storage version of v1api20230601preview.FlexibleServerOperatorConfigMaps +type FlexibleServerOperatorConfigMaps struct { + FullyQualifiedDomainName *genruntime.ConfigMapDestination `json:"fullyQualifiedDomainName,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` +} + +// AssignProperties_From_FlexibleServerOperatorConfigMaps populates our FlexibleServerOperatorConfigMaps from the provided source FlexibleServerOperatorConfigMaps +func (maps *FlexibleServerOperatorConfigMaps) AssignProperties_From_FlexibleServerOperatorConfigMaps(source *v20221201s.FlexibleServerOperatorConfigMaps) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(source.PropertyBag) + + // FullyQualifiedDomainName + if source.FullyQualifiedDomainName != nil { + fullyQualifiedDomainName := source.FullyQualifiedDomainName.Copy() + maps.FullyQualifiedDomainName = &fullyQualifiedDomainName + } else { + maps.FullyQualifiedDomainName = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + maps.PropertyBag = propertyBag + } else { + maps.PropertyBag = nil + } + + // Invoke the augmentConversionForFlexibleServerOperatorConfigMaps interface (if implemented) to customize the conversion + var mapsAsAny any = maps + if augmentedMaps, ok := mapsAsAny.(augmentConversionForFlexibleServerOperatorConfigMaps); ok { + err := augmentedMaps.AssignPropertiesFrom(source) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesFrom() for conversion") + } + } + + // No error + return nil +} + +// AssignProperties_To_FlexibleServerOperatorConfigMaps populates the provided destination FlexibleServerOperatorConfigMaps from our FlexibleServerOperatorConfigMaps +func (maps *FlexibleServerOperatorConfigMaps) AssignProperties_To_FlexibleServerOperatorConfigMaps(destination *v20221201s.FlexibleServerOperatorConfigMaps) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(maps.PropertyBag) + + // FullyQualifiedDomainName + if maps.FullyQualifiedDomainName != nil { + fullyQualifiedDomainName := maps.FullyQualifiedDomainName.Copy() + destination.FullyQualifiedDomainName = &fullyQualifiedDomainName + } else { + destination.FullyQualifiedDomainName = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // Invoke the augmentConversionForFlexibleServerOperatorConfigMaps interface (if implemented) to customize the conversion + var mapsAsAny any = maps + if augmentedMaps, ok := mapsAsAny.(augmentConversionForFlexibleServerOperatorConfigMaps); ok { + err := augmentedMaps.AssignPropertiesTo(destination) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesTo() for conversion") + } + } + + // No error + return nil +} + +// Storage version of v1api20230601preview.FlexibleServerOperatorSecrets +type FlexibleServerOperatorSecrets struct { + FullyQualifiedDomainName *genruntime.SecretDestination `json:"fullyQualifiedDomainName,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` +} + +// AssignProperties_From_FlexibleServerOperatorSecrets populates our FlexibleServerOperatorSecrets from the provided source FlexibleServerOperatorSecrets +func (secrets *FlexibleServerOperatorSecrets) AssignProperties_From_FlexibleServerOperatorSecrets(source *v20221201s.FlexibleServerOperatorSecrets) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(source.PropertyBag) + + // FullyQualifiedDomainName + if source.FullyQualifiedDomainName != nil { + fullyQualifiedDomainName := source.FullyQualifiedDomainName.Copy() + secrets.FullyQualifiedDomainName = &fullyQualifiedDomainName + } else { + secrets.FullyQualifiedDomainName = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + secrets.PropertyBag = propertyBag + } else { + secrets.PropertyBag = nil + } + + // Invoke the augmentConversionForFlexibleServerOperatorSecrets interface (if implemented) to customize the conversion + var secretsAsAny any = secrets + if augmentedSecrets, ok := secretsAsAny.(augmentConversionForFlexibleServerOperatorSecrets); ok { + err := augmentedSecrets.AssignPropertiesFrom(source) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesFrom() for conversion") + } + } + + // No error + return nil +} + +// AssignProperties_To_FlexibleServerOperatorSecrets populates the provided destination FlexibleServerOperatorSecrets from our FlexibleServerOperatorSecrets +func (secrets *FlexibleServerOperatorSecrets) AssignProperties_To_FlexibleServerOperatorSecrets(destination *v20221201s.FlexibleServerOperatorSecrets) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(secrets.PropertyBag) + + // FullyQualifiedDomainName + if secrets.FullyQualifiedDomainName != nil { + fullyQualifiedDomainName := secrets.FullyQualifiedDomainName.Copy() + destination.FullyQualifiedDomainName = &fullyQualifiedDomainName + } else { + destination.FullyQualifiedDomainName = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // Invoke the augmentConversionForFlexibleServerOperatorSecrets interface (if implemented) to customize the conversion + var secretsAsAny any = secrets + if augmentedSecrets, ok := secretsAsAny.(augmentConversionForFlexibleServerOperatorSecrets); ok { + err := augmentedSecrets.AssignPropertiesTo(destination) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesTo() for conversion") + } + } + + // No error + return nil +} + +// Storage version of v1api20230601preview.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"` +} + +// AssignProperties_From_UserAssignedIdentityDetails populates our UserAssignedIdentityDetails from the provided source UserAssignedIdentityDetails +func (details *UserAssignedIdentityDetails) AssignProperties_From_UserAssignedIdentityDetails(source *v20221201s.UserAssignedIdentityDetails) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(source.PropertyBag) + + // Reference + details.Reference = source.Reference.Copy() + + // Update the property bag + if len(propertyBag) > 0 { + details.PropertyBag = propertyBag + } else { + details.PropertyBag = nil + } + + // Invoke the augmentConversionForUserAssignedIdentityDetails interface (if implemented) to customize the conversion + var detailsAsAny any = details + if augmentedDetails, ok := detailsAsAny.(augmentConversionForUserAssignedIdentityDetails); ok { + err := augmentedDetails.AssignPropertiesFrom(source) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesFrom() for conversion") + } + } + + // No error + return nil +} + +// AssignProperties_To_UserAssignedIdentityDetails populates the provided destination UserAssignedIdentityDetails from our UserAssignedIdentityDetails +func (details *UserAssignedIdentityDetails) AssignProperties_To_UserAssignedIdentityDetails(destination *v20221201s.UserAssignedIdentityDetails) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(details.PropertyBag) + + // Reference + destination.Reference = details.Reference.Copy() + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // Invoke the augmentConversionForUserAssignedIdentityDetails interface (if implemented) to customize the conversion + var detailsAsAny any = details + if augmentedDetails, ok := detailsAsAny.(augmentConversionForUserAssignedIdentityDetails); ok { + err := augmentedDetails.AssignPropertiesTo(destination) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesTo() for conversion") + } + } + + // No error + return nil +} + +// Storage version of v1api20230601preview.UserIdentity_STATUS +// Describes a single user-assigned identity associated with the application. +type UserIdentity_STATUS struct { + ClientId *string `json:"clientId,omitempty"` + PrincipalId *string `json:"principalId,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` +} + +// AssignProperties_From_UserIdentity_STATUS populates our UserIdentity_STATUS from the provided source UserIdentity_STATUS +func (identity *UserIdentity_STATUS) AssignProperties_From_UserIdentity_STATUS(source *v20221201s.UserIdentity_STATUS) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(source.PropertyBag) + + // ClientId + identity.ClientId = genruntime.ClonePointerToString(source.ClientId) + + // PrincipalId + identity.PrincipalId = genruntime.ClonePointerToString(source.PrincipalId) + + // Update the property bag + if len(propertyBag) > 0 { + identity.PropertyBag = propertyBag + } else { + identity.PropertyBag = nil + } + + // Invoke the augmentConversionForUserIdentity_STATUS interface (if implemented) to customize the conversion + var identityAsAny any = identity + if augmentedIdentity, ok := identityAsAny.(augmentConversionForUserIdentity_STATUS); ok { + err := augmentedIdentity.AssignPropertiesFrom(source) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesFrom() for conversion") + } + } + + // No error + return nil +} + +// AssignProperties_To_UserIdentity_STATUS populates the provided destination UserIdentity_STATUS from our UserIdentity_STATUS +func (identity *UserIdentity_STATUS) AssignProperties_To_UserIdentity_STATUS(destination *v20221201s.UserIdentity_STATUS) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(identity.PropertyBag) + + // 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 + } + + // Invoke the augmentConversionForUserIdentity_STATUS interface (if implemented) to customize the conversion + var identityAsAny any = identity + if augmentedIdentity, ok := identityAsAny.(augmentConversionForUserIdentity_STATUS); ok { + err := augmentedIdentity.AssignPropertiesTo(destination) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesTo() for conversion") + } + } + + // No error + return nil +} + +type augmentConversionForFlexibleServerOperatorConfigMaps interface { + AssignPropertiesFrom(src *v20221201s.FlexibleServerOperatorConfigMaps) error + AssignPropertiesTo(dst *v20221201s.FlexibleServerOperatorConfigMaps) error +} + +type augmentConversionForFlexibleServerOperatorSecrets interface { + AssignPropertiesFrom(src *v20221201s.FlexibleServerOperatorSecrets) error + AssignPropertiesTo(dst *v20221201s.FlexibleServerOperatorSecrets) error +} + +type augmentConversionForUserAssignedIdentityDetails interface { + AssignPropertiesFrom(src *v20221201s.UserAssignedIdentityDetails) error + AssignPropertiesTo(dst *v20221201s.UserAssignedIdentityDetails) error +} + +type augmentConversionForUserIdentity_STATUS interface { + AssignPropertiesFrom(src *v20221201s.UserIdentity_STATUS) error + AssignPropertiesTo(dst *v20221201s.UserIdentity_STATUS) error +} + +func init() { + SchemeBuilder.Register(&FlexibleServer{}, &FlexibleServerList{}) +} diff --git a/v2/api/dbforpostgresql/v1api20230601preview/storage/flexible_server_types_gen_test.go b/v2/api/dbforpostgresql/v1api20230601preview/storage/flexible_server_types_gen_test.go new file mode 100644 index 00000000000..b816d0fc1ac --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/storage/flexible_server_types_gen_test.go @@ -0,0 +1,3147 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package storage + +import ( + "encoding/json" + v20221201s "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20221201/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_FlexibleServer_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 FlexibleServer to hub returns original", + prop.ForAll(RunResourceConversionTestForFlexibleServer, FlexibleServerGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunResourceConversionTestForFlexibleServer tests if a specific instance of FlexibleServer round trips to the hub storage version and back losslessly +func RunResourceConversionTestForFlexibleServer(subject FlexibleServer) string { + // Copy subject to make sure conversion doesn't modify it + copied := subject.DeepCopy() + + // Convert to our hub version + var hub v20221201s.FlexibleServer + err := copied.ConvertTo(&hub) + if err != nil { + return err.Error() + } + + // Convert from our hub version + var actual FlexibleServer + 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_FlexibleServer_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from FlexibleServer to FlexibleServer via AssignProperties_To_FlexibleServer & AssignProperties_From_FlexibleServer returns original", + prop.ForAll(RunPropertyAssignmentTestForFlexibleServer, FlexibleServerGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForFlexibleServer tests if a specific instance of FlexibleServer can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForFlexibleServer(subject FlexibleServer) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20221201s.FlexibleServer + err := copied.AssignProperties_To_FlexibleServer(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual FlexibleServer + err = actual.AssignProperties_From_FlexibleServer(&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_FlexibleServer_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 FlexibleServer via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServer, FlexibleServerGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServer runs a test to see if a specific instance of FlexibleServer round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServer(subject FlexibleServer) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServer + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of FlexibleServer instances for property testing - lazily instantiated by FlexibleServerGenerator() +var flexibleServerGenerator gopter.Gen + +// FlexibleServerGenerator returns a generator of FlexibleServer instances for property testing. +func FlexibleServerGenerator() gopter.Gen { + if flexibleServerGenerator != nil { + return flexibleServerGenerator + } + + generators := make(map[string]gopter.Gen) + AddRelatedPropertyGeneratorsForFlexibleServer(generators) + flexibleServerGenerator = gen.Struct(reflect.TypeOf(FlexibleServer{}), generators) + + return flexibleServerGenerator +} + +// AddRelatedPropertyGeneratorsForFlexibleServer is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForFlexibleServer(gens map[string]gopter.Gen) { + gens["Spec"] = FlexibleServer_SpecGenerator() + gens["Status"] = FlexibleServer_STATUSGenerator() +} + +func Test_FlexibleServer_Spec_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from FlexibleServer_Spec to FlexibleServer_Spec via AssignProperties_To_FlexibleServer_Spec & AssignProperties_From_FlexibleServer_Spec returns original", + prop.ForAll(RunPropertyAssignmentTestForFlexibleServer_Spec, FlexibleServer_SpecGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForFlexibleServer_Spec tests if a specific instance of FlexibleServer_Spec can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForFlexibleServer_Spec(subject FlexibleServer_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 v20221201s.FlexibleServer_Spec + err := copied.AssignProperties_To_FlexibleServer_Spec(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual FlexibleServer_Spec + err = actual.AssignProperties_From_FlexibleServer_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_FlexibleServer_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 FlexibleServer_Spec via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServer_Spec, FlexibleServer_SpecGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServer_Spec runs a test to see if a specific instance of FlexibleServer_Spec round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServer_Spec(subject FlexibleServer_Spec) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServer_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 FlexibleServer_Spec instances for property testing - lazily instantiated by +// FlexibleServer_SpecGenerator() +var flexibleServer_SpecGenerator gopter.Gen + +// FlexibleServer_SpecGenerator returns a generator of FlexibleServer_Spec instances for property testing. +// We first initialize flexibleServer_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 FlexibleServer_SpecGenerator() gopter.Gen { + if flexibleServer_SpecGenerator != nil { + return flexibleServer_SpecGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServer_Spec(generators) + flexibleServer_SpecGenerator = gen.Struct(reflect.TypeOf(FlexibleServer_Spec{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServer_Spec(generators) + AddRelatedPropertyGeneratorsForFlexibleServer_Spec(generators) + flexibleServer_SpecGenerator = gen.Struct(reflect.TypeOf(FlexibleServer_Spec{}), generators) + + return flexibleServer_SpecGenerator +} + +// AddIndependentPropertyGeneratorsForFlexibleServer_Spec is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForFlexibleServer_Spec(gens map[string]gopter.Gen) { + gens["AdministratorLogin"] = gen.PtrOf(gen.AlphaString()) + gens["AvailabilityZone"] = gen.PtrOf(gen.AlphaString()) + gens["AzureName"] = gen.AlphaString() + gens["CreateMode"] = gen.PtrOf(gen.AlphaString()) + gens["Location"] = gen.PtrOf(gen.AlphaString()) + gens["OriginalVersion"] = gen.AlphaString() + gens["PointInTimeUTC"] = gen.PtrOf(gen.AlphaString()) + gens["ReplicationRole"] = gen.PtrOf(gen.AlphaString()) + gens["Tags"] = gen.MapOf(gen.AlphaString(), gen.AlphaString()) + gens["Version"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForFlexibleServer_Spec is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForFlexibleServer_Spec(gens map[string]gopter.Gen) { + gens["AuthConfig"] = gen.PtrOf(AuthConfigGenerator()) + gens["Backup"] = gen.PtrOf(BackupGenerator()) + gens["DataEncryption"] = gen.PtrOf(DataEncryptionGenerator()) + gens["HighAvailability"] = gen.PtrOf(HighAvailabilityGenerator()) + gens["Identity"] = gen.PtrOf(UserAssignedIdentityGenerator()) + gens["MaintenanceWindow"] = gen.PtrOf(MaintenanceWindowGenerator()) + gens["Network"] = gen.PtrOf(NetworkGenerator()) + gens["OperatorSpec"] = gen.PtrOf(FlexibleServerOperatorSpecGenerator()) + gens["Replica"] = gen.PtrOf(ReplicaGenerator()) + gens["Sku"] = gen.PtrOf(SkuGenerator()) + gens["Storage"] = gen.PtrOf(StorageGenerator()) +} + +func Test_FlexibleServer_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from FlexibleServer_STATUS to FlexibleServer_STATUS via AssignProperties_To_FlexibleServer_STATUS & AssignProperties_From_FlexibleServer_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForFlexibleServer_STATUS, FlexibleServer_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForFlexibleServer_STATUS tests if a specific instance of FlexibleServer_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForFlexibleServer_STATUS(subject FlexibleServer_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 v20221201s.FlexibleServer_STATUS + err := copied.AssignProperties_To_FlexibleServer_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual FlexibleServer_STATUS + err = actual.AssignProperties_From_FlexibleServer_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_FlexibleServer_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of FlexibleServer_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServer_STATUS, FlexibleServer_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServer_STATUS runs a test to see if a specific instance of FlexibleServer_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServer_STATUS(subject FlexibleServer_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServer_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of FlexibleServer_STATUS instances for property testing - lazily instantiated by +// FlexibleServer_STATUSGenerator() +var flexibleServer_STATUSGenerator gopter.Gen + +// FlexibleServer_STATUSGenerator returns a generator of FlexibleServer_STATUS instances for property testing. +// We first initialize flexibleServer_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 FlexibleServer_STATUSGenerator() gopter.Gen { + if flexibleServer_STATUSGenerator != nil { + return flexibleServer_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServer_STATUS(generators) + flexibleServer_STATUSGenerator = gen.Struct(reflect.TypeOf(FlexibleServer_STATUS{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServer_STATUS(generators) + AddRelatedPropertyGeneratorsForFlexibleServer_STATUS(generators) + flexibleServer_STATUSGenerator = gen.Struct(reflect.TypeOf(FlexibleServer_STATUS{}), generators) + + return flexibleServer_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForFlexibleServer_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForFlexibleServer_STATUS(gens map[string]gopter.Gen) { + gens["AdministratorLogin"] = gen.PtrOf(gen.AlphaString()) + gens["AvailabilityZone"] = gen.PtrOf(gen.AlphaString()) + gens["CreateMode"] = gen.PtrOf(gen.AlphaString()) + gens["FullyQualifiedDomainName"] = gen.PtrOf(gen.AlphaString()) + gens["Id"] = gen.PtrOf(gen.AlphaString()) + gens["Location"] = gen.PtrOf(gen.AlphaString()) + gens["MinorVersion"] = gen.PtrOf(gen.AlphaString()) + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["PointInTimeUTC"] = gen.PtrOf(gen.AlphaString()) + gens["ReplicaCapacity"] = gen.PtrOf(gen.Int()) + gens["ReplicationRole"] = gen.PtrOf(gen.AlphaString()) + gens["SourceServerResourceId"] = gen.PtrOf(gen.AlphaString()) + gens["State"] = gen.PtrOf(gen.AlphaString()) + gens["Tags"] = gen.MapOf(gen.AlphaString(), gen.AlphaString()) + gens["Type"] = gen.PtrOf(gen.AlphaString()) + gens["Version"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForFlexibleServer_STATUS is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForFlexibleServer_STATUS(gens map[string]gopter.Gen) { + gens["AuthConfig"] = gen.PtrOf(AuthConfig_STATUSGenerator()) + gens["Backup"] = gen.PtrOf(Backup_STATUSGenerator()) + gens["DataEncryption"] = gen.PtrOf(DataEncryption_STATUSGenerator()) + gens["HighAvailability"] = gen.PtrOf(HighAvailability_STATUSGenerator()) + gens["Identity"] = gen.PtrOf(UserAssignedIdentity_STATUSGenerator()) + gens["MaintenanceWindow"] = gen.PtrOf(MaintenanceWindow_STATUSGenerator()) + gens["Network"] = gen.PtrOf(Network_STATUSGenerator()) + gens["PrivateEndpointConnections"] = gen.SliceOf(PrivateEndpointConnection_STATUSGenerator()) + gens["Replica"] = gen.PtrOf(Replica_STATUSGenerator()) + gens["Sku"] = gen.PtrOf(Sku_STATUSGenerator()) + gens["Storage"] = gen.PtrOf(Storage_STATUSGenerator()) + gens["SystemData"] = gen.PtrOf(SystemData_STATUSGenerator()) +} + +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 v20221201s.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 = 100 + 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) + AddIndependentPropertyGeneratorsForAuthConfig(generators) + authConfigGenerator = gen.Struct(reflect.TypeOf(AuthConfig{}), generators) + + return authConfigGenerator +} + +// AddIndependentPropertyGeneratorsForAuthConfig is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForAuthConfig(gens map[string]gopter.Gen) { + gens["ActiveDirectoryAuth"] = gen.PtrOf(gen.AlphaString()) + gens["PasswordAuth"] = gen.PtrOf(gen.AlphaString()) + gens["TenantId"] = gen.PtrOf(gen.AlphaString()) +} + +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 v20221201s.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. +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) + + return authConfig_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForAuthConfig_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForAuthConfig_STATUS(gens map[string]gopter.Gen) { + gens["ActiveDirectoryAuth"] = gen.PtrOf(gen.AlphaString()) + gens["PasswordAuth"] = gen.PtrOf(gen.AlphaString()) + gens["TenantId"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_Backup_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from Backup to Backup via AssignProperties_To_Backup & AssignProperties_From_Backup returns original", + prop.ForAll(RunPropertyAssignmentTestForBackup, BackupGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForBackup tests if a specific instance of Backup can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForBackup(subject Backup) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20221201s.Backup + err := copied.AssignProperties_To_Backup(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual Backup + err = actual.AssignProperties_From_Backup(&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_Backup_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Backup via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackup, BackupGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackup runs a test to see if a specific instance of Backup round trips to JSON and back losslessly +func RunJSONSerializationTestForBackup(subject Backup) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Backup + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Backup instances for property testing - lazily instantiated by BackupGenerator() +var backupGenerator gopter.Gen + +// BackupGenerator returns a generator of Backup instances for property testing. +func BackupGenerator() gopter.Gen { + if backupGenerator != nil { + return backupGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackup(generators) + backupGenerator = gen.Struct(reflect.TypeOf(Backup{}), generators) + + return backupGenerator +} + +// AddIndependentPropertyGeneratorsForBackup is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackup(gens map[string]gopter.Gen) { + gens["BackupRetentionDays"] = gen.PtrOf(gen.Int()) + gens["GeoRedundantBackup"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_Backup_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from Backup_STATUS to Backup_STATUS via AssignProperties_To_Backup_STATUS & AssignProperties_From_Backup_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForBackup_STATUS, Backup_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForBackup_STATUS tests if a specific instance of Backup_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForBackup_STATUS(subject Backup_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 v20221201s.Backup_STATUS + err := copied.AssignProperties_To_Backup_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual Backup_STATUS + err = actual.AssignProperties_From_Backup_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_Backup_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Backup_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForBackup_STATUS, Backup_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForBackup_STATUS runs a test to see if a specific instance of Backup_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForBackup_STATUS(subject Backup_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Backup_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Backup_STATUS instances for property testing - lazily instantiated by Backup_STATUSGenerator() +var backup_STATUSGenerator gopter.Gen + +// Backup_STATUSGenerator returns a generator of Backup_STATUS instances for property testing. +func Backup_STATUSGenerator() gopter.Gen { + if backup_STATUSGenerator != nil { + return backup_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForBackup_STATUS(generators) + backup_STATUSGenerator = gen.Struct(reflect.TypeOf(Backup_STATUS{}), generators) + + return backup_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForBackup_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForBackup_STATUS(gens map[string]gopter.Gen) { + gens["BackupRetentionDays"] = gen.PtrOf(gen.Int()) + gens["EarliestRestoreDate"] = gen.PtrOf(gen.AlphaString()) + gens["GeoRedundantBackup"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_DataEncryption_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from DataEncryption to DataEncryption via AssignProperties_To_DataEncryption & AssignProperties_From_DataEncryption returns original", + prop.ForAll(RunPropertyAssignmentTestForDataEncryption, DataEncryptionGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForDataEncryption tests if a specific instance of DataEncryption can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForDataEncryption(subject DataEncryption) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20221201s.DataEncryption + err := copied.AssignProperties_To_DataEncryption(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual DataEncryption + err = actual.AssignProperties_From_DataEncryption(&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_DataEncryption_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of DataEncryption via JSON returns original", + prop.ForAll(RunJSONSerializationTestForDataEncryption, DataEncryptionGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForDataEncryption runs a test to see if a specific instance of DataEncryption round trips to JSON and back losslessly +func RunJSONSerializationTestForDataEncryption(subject DataEncryption) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual DataEncryption + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of DataEncryption instances for property testing - lazily instantiated by DataEncryptionGenerator() +var dataEncryptionGenerator gopter.Gen + +// DataEncryptionGenerator returns a generator of DataEncryption instances for property testing. +func DataEncryptionGenerator() gopter.Gen { + if dataEncryptionGenerator != nil { + return dataEncryptionGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForDataEncryption(generators) + dataEncryptionGenerator = gen.Struct(reflect.TypeOf(DataEncryption{}), generators) + + return dataEncryptionGenerator +} + +// AddIndependentPropertyGeneratorsForDataEncryption is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForDataEncryption(gens map[string]gopter.Gen) { + gens["GeoBackupEncryptionKeyStatus"] = gen.PtrOf(gen.AlphaString()) + gens["GeoBackupKeyURI"] = gen.PtrOf(gen.AlphaString()) + gens["PrimaryEncryptionKeyStatus"] = gen.PtrOf(gen.AlphaString()) + gens["PrimaryKeyURI"] = gen.PtrOf(gen.AlphaString()) + gens["Type"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_DataEncryption_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from DataEncryption_STATUS to DataEncryption_STATUS via AssignProperties_To_DataEncryption_STATUS & AssignProperties_From_DataEncryption_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForDataEncryption_STATUS, DataEncryption_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForDataEncryption_STATUS tests if a specific instance of DataEncryption_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForDataEncryption_STATUS(subject DataEncryption_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 v20221201s.DataEncryption_STATUS + err := copied.AssignProperties_To_DataEncryption_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual DataEncryption_STATUS + err = actual.AssignProperties_From_DataEncryption_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_DataEncryption_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of DataEncryption_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForDataEncryption_STATUS, DataEncryption_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForDataEncryption_STATUS runs a test to see if a specific instance of DataEncryption_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForDataEncryption_STATUS(subject DataEncryption_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual DataEncryption_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of DataEncryption_STATUS instances for property testing - lazily instantiated by +// DataEncryption_STATUSGenerator() +var dataEncryption_STATUSGenerator gopter.Gen + +// DataEncryption_STATUSGenerator returns a generator of DataEncryption_STATUS instances for property testing. +func DataEncryption_STATUSGenerator() gopter.Gen { + if dataEncryption_STATUSGenerator != nil { + return dataEncryption_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForDataEncryption_STATUS(generators) + dataEncryption_STATUSGenerator = gen.Struct(reflect.TypeOf(DataEncryption_STATUS{}), generators) + + return dataEncryption_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForDataEncryption_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForDataEncryption_STATUS(gens map[string]gopter.Gen) { + gens["GeoBackupEncryptionKeyStatus"] = gen.PtrOf(gen.AlphaString()) + gens["GeoBackupKeyURI"] = gen.PtrOf(gen.AlphaString()) + gens["GeoBackupUserAssignedIdentityId"] = gen.PtrOf(gen.AlphaString()) + gens["PrimaryEncryptionKeyStatus"] = gen.PtrOf(gen.AlphaString()) + gens["PrimaryKeyURI"] = gen.PtrOf(gen.AlphaString()) + gens["PrimaryUserAssignedIdentityId"] = gen.PtrOf(gen.AlphaString()) + gens["Type"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_FlexibleServerOperatorSpec_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from FlexibleServerOperatorSpec to FlexibleServerOperatorSpec via AssignProperties_To_FlexibleServerOperatorSpec & AssignProperties_From_FlexibleServerOperatorSpec returns original", + prop.ForAll(RunPropertyAssignmentTestForFlexibleServerOperatorSpec, FlexibleServerOperatorSpecGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForFlexibleServerOperatorSpec tests if a specific instance of FlexibleServerOperatorSpec can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForFlexibleServerOperatorSpec(subject FlexibleServerOperatorSpec) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20221201s.FlexibleServerOperatorSpec + err := copied.AssignProperties_To_FlexibleServerOperatorSpec(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual FlexibleServerOperatorSpec + err = actual.AssignProperties_From_FlexibleServerOperatorSpec(&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_FlexibleServerOperatorSpec_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of FlexibleServerOperatorSpec via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServerOperatorSpec, FlexibleServerOperatorSpecGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServerOperatorSpec runs a test to see if a specific instance of FlexibleServerOperatorSpec round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServerOperatorSpec(subject FlexibleServerOperatorSpec) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServerOperatorSpec + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of FlexibleServerOperatorSpec instances for property testing - lazily instantiated by +// FlexibleServerOperatorSpecGenerator() +var flexibleServerOperatorSpecGenerator gopter.Gen + +// FlexibleServerOperatorSpecGenerator returns a generator of FlexibleServerOperatorSpec instances for property testing. +func FlexibleServerOperatorSpecGenerator() gopter.Gen { + if flexibleServerOperatorSpecGenerator != nil { + return flexibleServerOperatorSpecGenerator + } + + generators := make(map[string]gopter.Gen) + AddRelatedPropertyGeneratorsForFlexibleServerOperatorSpec(generators) + flexibleServerOperatorSpecGenerator = gen.Struct(reflect.TypeOf(FlexibleServerOperatorSpec{}), generators) + + return flexibleServerOperatorSpecGenerator +} + +// AddRelatedPropertyGeneratorsForFlexibleServerOperatorSpec is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForFlexibleServerOperatorSpec(gens map[string]gopter.Gen) { + gens["ConfigMaps"] = gen.PtrOf(FlexibleServerOperatorConfigMapsGenerator()) + gens["Secrets"] = gen.PtrOf(FlexibleServerOperatorSecretsGenerator()) +} + +func Test_HighAvailability_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from HighAvailability to HighAvailability via AssignProperties_To_HighAvailability & AssignProperties_From_HighAvailability returns original", + prop.ForAll(RunPropertyAssignmentTestForHighAvailability, HighAvailabilityGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForHighAvailability tests if a specific instance of HighAvailability can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForHighAvailability(subject HighAvailability) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20221201s.HighAvailability + err := copied.AssignProperties_To_HighAvailability(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual HighAvailability + err = actual.AssignProperties_From_HighAvailability(&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_HighAvailability_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of HighAvailability via JSON returns original", + prop.ForAll(RunJSONSerializationTestForHighAvailability, HighAvailabilityGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForHighAvailability runs a test to see if a specific instance of HighAvailability round trips to JSON and back losslessly +func RunJSONSerializationTestForHighAvailability(subject HighAvailability) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual HighAvailability + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of HighAvailability instances for property testing - lazily instantiated by HighAvailabilityGenerator() +var highAvailabilityGenerator gopter.Gen + +// HighAvailabilityGenerator returns a generator of HighAvailability instances for property testing. +func HighAvailabilityGenerator() gopter.Gen { + if highAvailabilityGenerator != nil { + return highAvailabilityGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForHighAvailability(generators) + highAvailabilityGenerator = gen.Struct(reflect.TypeOf(HighAvailability{}), generators) + + return highAvailabilityGenerator +} + +// AddIndependentPropertyGeneratorsForHighAvailability is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForHighAvailability(gens map[string]gopter.Gen) { + gens["Mode"] = gen.PtrOf(gen.AlphaString()) + gens["StandbyAvailabilityZone"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_HighAvailability_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from HighAvailability_STATUS to HighAvailability_STATUS via AssignProperties_To_HighAvailability_STATUS & AssignProperties_From_HighAvailability_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForHighAvailability_STATUS, HighAvailability_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForHighAvailability_STATUS tests if a specific instance of HighAvailability_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForHighAvailability_STATUS(subject HighAvailability_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 v20221201s.HighAvailability_STATUS + err := copied.AssignProperties_To_HighAvailability_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual HighAvailability_STATUS + err = actual.AssignProperties_From_HighAvailability_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_HighAvailability_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of HighAvailability_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForHighAvailability_STATUS, HighAvailability_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForHighAvailability_STATUS runs a test to see if a specific instance of HighAvailability_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForHighAvailability_STATUS(subject HighAvailability_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual HighAvailability_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of HighAvailability_STATUS instances for property testing - lazily instantiated by +// HighAvailability_STATUSGenerator() +var highAvailability_STATUSGenerator gopter.Gen + +// HighAvailability_STATUSGenerator returns a generator of HighAvailability_STATUS instances for property testing. +func HighAvailability_STATUSGenerator() gopter.Gen { + if highAvailability_STATUSGenerator != nil { + return highAvailability_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForHighAvailability_STATUS(generators) + highAvailability_STATUSGenerator = gen.Struct(reflect.TypeOf(HighAvailability_STATUS{}), generators) + + return highAvailability_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForHighAvailability_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForHighAvailability_STATUS(gens map[string]gopter.Gen) { + gens["Mode"] = gen.PtrOf(gen.AlphaString()) + gens["StandbyAvailabilityZone"] = gen.PtrOf(gen.AlphaString()) + gens["State"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_MaintenanceWindow_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from MaintenanceWindow to MaintenanceWindow via AssignProperties_To_MaintenanceWindow & AssignProperties_From_MaintenanceWindow returns original", + prop.ForAll(RunPropertyAssignmentTestForMaintenanceWindow, MaintenanceWindowGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForMaintenanceWindow tests if a specific instance of MaintenanceWindow can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForMaintenanceWindow(subject MaintenanceWindow) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20221201s.MaintenanceWindow + err := copied.AssignProperties_To_MaintenanceWindow(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual MaintenanceWindow + err = actual.AssignProperties_From_MaintenanceWindow(&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_MaintenanceWindow_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of MaintenanceWindow via JSON returns original", + prop.ForAll(RunJSONSerializationTestForMaintenanceWindow, MaintenanceWindowGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForMaintenanceWindow runs a test to see if a specific instance of MaintenanceWindow round trips to JSON and back losslessly +func RunJSONSerializationTestForMaintenanceWindow(subject MaintenanceWindow) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual MaintenanceWindow + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of MaintenanceWindow instances for property testing - lazily instantiated by MaintenanceWindowGenerator() +var maintenanceWindowGenerator gopter.Gen + +// MaintenanceWindowGenerator returns a generator of MaintenanceWindow instances for property testing. +func MaintenanceWindowGenerator() gopter.Gen { + if maintenanceWindowGenerator != nil { + return maintenanceWindowGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForMaintenanceWindow(generators) + maintenanceWindowGenerator = gen.Struct(reflect.TypeOf(MaintenanceWindow{}), generators) + + return maintenanceWindowGenerator +} + +// AddIndependentPropertyGeneratorsForMaintenanceWindow is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForMaintenanceWindow(gens map[string]gopter.Gen) { + gens["CustomWindow"] = gen.PtrOf(gen.AlphaString()) + gens["DayOfWeek"] = gen.PtrOf(gen.Int()) + gens["StartHour"] = gen.PtrOf(gen.Int()) + gens["StartMinute"] = gen.PtrOf(gen.Int()) +} + +func Test_MaintenanceWindow_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from MaintenanceWindow_STATUS to MaintenanceWindow_STATUS via AssignProperties_To_MaintenanceWindow_STATUS & AssignProperties_From_MaintenanceWindow_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForMaintenanceWindow_STATUS, MaintenanceWindow_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForMaintenanceWindow_STATUS tests if a specific instance of MaintenanceWindow_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForMaintenanceWindow_STATUS(subject MaintenanceWindow_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 v20221201s.MaintenanceWindow_STATUS + err := copied.AssignProperties_To_MaintenanceWindow_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual MaintenanceWindow_STATUS + err = actual.AssignProperties_From_MaintenanceWindow_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_MaintenanceWindow_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of MaintenanceWindow_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForMaintenanceWindow_STATUS, MaintenanceWindow_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForMaintenanceWindow_STATUS runs a test to see if a specific instance of MaintenanceWindow_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForMaintenanceWindow_STATUS(subject MaintenanceWindow_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual MaintenanceWindow_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of MaintenanceWindow_STATUS instances for property testing - lazily instantiated by +// MaintenanceWindow_STATUSGenerator() +var maintenanceWindow_STATUSGenerator gopter.Gen + +// MaintenanceWindow_STATUSGenerator returns a generator of MaintenanceWindow_STATUS instances for property testing. +func MaintenanceWindow_STATUSGenerator() gopter.Gen { + if maintenanceWindow_STATUSGenerator != nil { + return maintenanceWindow_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForMaintenanceWindow_STATUS(generators) + maintenanceWindow_STATUSGenerator = gen.Struct(reflect.TypeOf(MaintenanceWindow_STATUS{}), generators) + + return maintenanceWindow_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForMaintenanceWindow_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForMaintenanceWindow_STATUS(gens map[string]gopter.Gen) { + gens["CustomWindow"] = gen.PtrOf(gen.AlphaString()) + gens["DayOfWeek"] = gen.PtrOf(gen.Int()) + gens["StartHour"] = gen.PtrOf(gen.Int()) + gens["StartMinute"] = gen.PtrOf(gen.Int()) +} + +func Test_Network_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from Network to Network via AssignProperties_To_Network & AssignProperties_From_Network returns original", + prop.ForAll(RunPropertyAssignmentTestForNetwork, NetworkGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForNetwork tests if a specific instance of Network can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForNetwork(subject Network) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20221201s.Network + err := copied.AssignProperties_To_Network(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual Network + err = actual.AssignProperties_From_Network(&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_Network_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Network via JSON returns original", + prop.ForAll(RunJSONSerializationTestForNetwork, NetworkGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForNetwork runs a test to see if a specific instance of Network round trips to JSON and back losslessly +func RunJSONSerializationTestForNetwork(subject Network) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Network + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Network instances for property testing - lazily instantiated by NetworkGenerator() +var networkGenerator gopter.Gen + +// NetworkGenerator returns a generator of Network instances for property testing. +func NetworkGenerator() gopter.Gen { + if networkGenerator != nil { + return networkGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForNetwork(generators) + networkGenerator = gen.Struct(reflect.TypeOf(Network{}), generators) + + return networkGenerator +} + +// AddIndependentPropertyGeneratorsForNetwork is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForNetwork(gens map[string]gopter.Gen) { + gens["PublicNetworkAccess"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_Network_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from Network_STATUS to Network_STATUS via AssignProperties_To_Network_STATUS & AssignProperties_From_Network_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForNetwork_STATUS, Network_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForNetwork_STATUS tests if a specific instance of Network_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForNetwork_STATUS(subject Network_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 v20221201s.Network_STATUS + err := copied.AssignProperties_To_Network_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual Network_STATUS + err = actual.AssignProperties_From_Network_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_Network_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Network_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForNetwork_STATUS, Network_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForNetwork_STATUS runs a test to see if a specific instance of Network_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForNetwork_STATUS(subject Network_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Network_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Network_STATUS instances for property testing - lazily instantiated by Network_STATUSGenerator() +var network_STATUSGenerator gopter.Gen + +// Network_STATUSGenerator returns a generator of Network_STATUS instances for property testing. +func Network_STATUSGenerator() gopter.Gen { + if network_STATUSGenerator != nil { + return network_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForNetwork_STATUS(generators) + network_STATUSGenerator = gen.Struct(reflect.TypeOf(Network_STATUS{}), generators) + + return network_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForNetwork_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForNetwork_STATUS(gens map[string]gopter.Gen) { + gens["DelegatedSubnetResourceId"] = gen.PtrOf(gen.AlphaString()) + gens["PrivateDnsZoneArmResourceId"] = gen.PtrOf(gen.AlphaString()) + gens["PublicNetworkAccess"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_PrivateEndpointConnection_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of PrivateEndpointConnection_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForPrivateEndpointConnection_STATUS, PrivateEndpointConnection_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForPrivateEndpointConnection_STATUS runs a test to see if a specific instance of PrivateEndpointConnection_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForPrivateEndpointConnection_STATUS(subject PrivateEndpointConnection_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual PrivateEndpointConnection_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of PrivateEndpointConnection_STATUS instances for property testing - lazily instantiated by +// PrivateEndpointConnection_STATUSGenerator() +var privateEndpointConnection_STATUSGenerator gopter.Gen + +// PrivateEndpointConnection_STATUSGenerator returns a generator of PrivateEndpointConnection_STATUS instances for property testing. +func PrivateEndpointConnection_STATUSGenerator() gopter.Gen { + if privateEndpointConnection_STATUSGenerator != nil { + return privateEndpointConnection_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForPrivateEndpointConnection_STATUS(generators) + privateEndpointConnection_STATUSGenerator = gen.Struct(reflect.TypeOf(PrivateEndpointConnection_STATUS{}), generators) + + return privateEndpointConnection_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForPrivateEndpointConnection_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForPrivateEndpointConnection_STATUS(gens map[string]gopter.Gen) { + gens["Id"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_Replica_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Replica via JSON returns original", + prop.ForAll(RunJSONSerializationTestForReplica, ReplicaGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForReplica runs a test to see if a specific instance of Replica round trips to JSON and back losslessly +func RunJSONSerializationTestForReplica(subject Replica) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Replica + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Replica instances for property testing - lazily instantiated by ReplicaGenerator() +var replicaGenerator gopter.Gen + +// ReplicaGenerator returns a generator of Replica instances for property testing. +func ReplicaGenerator() gopter.Gen { + if replicaGenerator != nil { + return replicaGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForReplica(generators) + replicaGenerator = gen.Struct(reflect.TypeOf(Replica{}), generators) + + return replicaGenerator +} + +// AddIndependentPropertyGeneratorsForReplica is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForReplica(gens map[string]gopter.Gen) { + gens["PromoteMode"] = gen.PtrOf(gen.AlphaString()) + gens["PromoteOption"] = gen.PtrOf(gen.AlphaString()) + gens["Role"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_Replica_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Replica_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForReplica_STATUS, Replica_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForReplica_STATUS runs a test to see if a specific instance of Replica_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForReplica_STATUS(subject Replica_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Replica_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Replica_STATUS instances for property testing - lazily instantiated by Replica_STATUSGenerator() +var replica_STATUSGenerator gopter.Gen + +// Replica_STATUSGenerator returns a generator of Replica_STATUS instances for property testing. +func Replica_STATUSGenerator() gopter.Gen { + if replica_STATUSGenerator != nil { + return replica_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForReplica_STATUS(generators) + replica_STATUSGenerator = gen.Struct(reflect.TypeOf(Replica_STATUS{}), generators) + + return replica_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForReplica_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForReplica_STATUS(gens map[string]gopter.Gen) { + gens["Capacity"] = gen.PtrOf(gen.Int()) + gens["PromoteMode"] = gen.PtrOf(gen.AlphaString()) + gens["PromoteOption"] = gen.PtrOf(gen.AlphaString()) + gens["ReplicationState"] = gen.PtrOf(gen.AlphaString()) + gens["Role"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_Sku_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from Sku to Sku via AssignProperties_To_Sku & AssignProperties_From_Sku returns original", + prop.ForAll(RunPropertyAssignmentTestForSku, SkuGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForSku tests if a specific instance of Sku can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForSku(subject Sku) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20221201s.Sku + err := copied.AssignProperties_To_Sku(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual Sku + err = actual.AssignProperties_From_Sku(&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_Sku_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Sku via JSON returns original", + prop.ForAll(RunJSONSerializationTestForSku, SkuGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForSku runs a test to see if a specific instance of Sku round trips to JSON and back losslessly +func RunJSONSerializationTestForSku(subject Sku) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Sku + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Sku instances for property testing - lazily instantiated by SkuGenerator() +var skuGenerator gopter.Gen + +// SkuGenerator returns a generator of Sku instances for property testing. +func SkuGenerator() gopter.Gen { + if skuGenerator != nil { + return skuGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForSku(generators) + skuGenerator = gen.Struct(reflect.TypeOf(Sku{}), generators) + + return skuGenerator +} + +// AddIndependentPropertyGeneratorsForSku is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForSku(gens map[string]gopter.Gen) { + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["Tier"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_Sku_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from Sku_STATUS to Sku_STATUS via AssignProperties_To_Sku_STATUS & AssignProperties_From_Sku_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForSku_STATUS, Sku_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForSku_STATUS tests if a specific instance of Sku_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForSku_STATUS(subject Sku_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 v20221201s.Sku_STATUS + err := copied.AssignProperties_To_Sku_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual Sku_STATUS + err = actual.AssignProperties_From_Sku_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_Sku_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Sku_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForSku_STATUS, Sku_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForSku_STATUS runs a test to see if a specific instance of Sku_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForSku_STATUS(subject Sku_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Sku_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Sku_STATUS instances for property testing - lazily instantiated by Sku_STATUSGenerator() +var sku_STATUSGenerator gopter.Gen + +// Sku_STATUSGenerator returns a generator of Sku_STATUS instances for property testing. +func Sku_STATUSGenerator() gopter.Gen { + if sku_STATUSGenerator != nil { + return sku_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForSku_STATUS(generators) + sku_STATUSGenerator = gen.Struct(reflect.TypeOf(Sku_STATUS{}), generators) + + return sku_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForSku_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForSku_STATUS(gens map[string]gopter.Gen) { + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["Tier"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_Storage_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from Storage to Storage via AssignProperties_To_Storage & AssignProperties_From_Storage returns original", + prop.ForAll(RunPropertyAssignmentTestForStorage, StorageGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForStorage tests if a specific instance of Storage can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForStorage(subject Storage) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20221201s.Storage + err := copied.AssignProperties_To_Storage(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual Storage + err = actual.AssignProperties_From_Storage(&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_Storage_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Storage via JSON returns original", + prop.ForAll(RunJSONSerializationTestForStorage, StorageGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForStorage runs a test to see if a specific instance of Storage round trips to JSON and back losslessly +func RunJSONSerializationTestForStorage(subject Storage) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Storage + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Storage instances for property testing - lazily instantiated by StorageGenerator() +var storageGenerator gopter.Gen + +// StorageGenerator returns a generator of Storage instances for property testing. +func StorageGenerator() gopter.Gen { + if storageGenerator != nil { + return storageGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForStorage(generators) + storageGenerator = gen.Struct(reflect.TypeOf(Storage{}), generators) + + return storageGenerator +} + +// AddIndependentPropertyGeneratorsForStorage is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForStorage(gens map[string]gopter.Gen) { + gens["AutoGrow"] = gen.PtrOf(gen.AlphaString()) + gens["Iops"] = gen.PtrOf(gen.Int()) + gens["StorageSizeGB"] = gen.PtrOf(gen.Int()) + gens["Throughput"] = gen.PtrOf(gen.Int()) + gens["Tier"] = gen.PtrOf(gen.AlphaString()) + gens["Type"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_Storage_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from Storage_STATUS to Storage_STATUS via AssignProperties_To_Storage_STATUS & AssignProperties_From_Storage_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForStorage_STATUS, Storage_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForStorage_STATUS tests if a specific instance of Storage_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForStorage_STATUS(subject Storage_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 v20221201s.Storage_STATUS + err := copied.AssignProperties_To_Storage_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual Storage_STATUS + err = actual.AssignProperties_From_Storage_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_Storage_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of Storage_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForStorage_STATUS, Storage_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForStorage_STATUS runs a test to see if a specific instance of Storage_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForStorage_STATUS(subject Storage_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual Storage_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of Storage_STATUS instances for property testing - lazily instantiated by Storage_STATUSGenerator() +var storage_STATUSGenerator gopter.Gen + +// Storage_STATUSGenerator returns a generator of Storage_STATUS instances for property testing. +func Storage_STATUSGenerator() gopter.Gen { + if storage_STATUSGenerator != nil { + return storage_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForStorage_STATUS(generators) + storage_STATUSGenerator = gen.Struct(reflect.TypeOf(Storage_STATUS{}), generators) + + return storage_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForStorage_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForStorage_STATUS(gens map[string]gopter.Gen) { + gens["AutoGrow"] = gen.PtrOf(gen.AlphaString()) + gens["Iops"] = gen.PtrOf(gen.Int()) + gens["StorageSizeGB"] = gen.PtrOf(gen.Int()) + gens["Throughput"] = gen.PtrOf(gen.Int()) + gens["Tier"] = gen.PtrOf(gen.AlphaString()) + gens["Type"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_SystemData_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from SystemData_STATUS to SystemData_STATUS via AssignProperties_To_SystemData_STATUS & AssignProperties_From_SystemData_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForSystemData_STATUS, SystemData_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForSystemData_STATUS tests if a specific instance of SystemData_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForSystemData_STATUS(subject SystemData_STATUS) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20221201s.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.AlphaString()) + gens["LastModifiedAt"] = gen.PtrOf(gen.AlphaString()) + gens["LastModifiedBy"] = gen.PtrOf(gen.AlphaString()) + gens["LastModifiedByType"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_UserAssignedIdentity_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from UserAssignedIdentity to UserAssignedIdentity via AssignProperties_To_UserAssignedIdentity & AssignProperties_From_UserAssignedIdentity returns original", + prop.ForAll(RunPropertyAssignmentTestForUserAssignedIdentity, UserAssignedIdentityGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForUserAssignedIdentity tests if a specific instance of UserAssignedIdentity can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForUserAssignedIdentity(subject UserAssignedIdentity) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20221201s.UserAssignedIdentity + err := copied.AssignProperties_To_UserAssignedIdentity(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual UserAssignedIdentity + err = actual.AssignProperties_From_UserAssignedIdentity(&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_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of UserAssignedIdentity via JSON returns original", + prop.ForAll(RunJSONSerializationTestForUserAssignedIdentity, UserAssignedIdentityGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForUserAssignedIdentity runs a test to see if a specific instance of UserAssignedIdentity round trips to JSON and back losslessly +func RunJSONSerializationTestForUserAssignedIdentity(subject UserAssignedIdentity) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual UserAssignedIdentity + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(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 instances for property testing - lazily instantiated by +// UserAssignedIdentityGenerator() +var userAssignedIdentityGenerator gopter.Gen + +// UserAssignedIdentityGenerator returns a generator of UserAssignedIdentity instances for property testing. +// We first initialize userAssignedIdentityGenerator with a simplified generator based on the +// fields with primitive types then replacing it with a more complex one that also handles complex fields +// to ensure any cycles in the object graph properly terminate. +func UserAssignedIdentityGenerator() gopter.Gen { + if userAssignedIdentityGenerator != nil { + return userAssignedIdentityGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForUserAssignedIdentity(generators) + userAssignedIdentityGenerator = gen.Struct(reflect.TypeOf(UserAssignedIdentity{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForUserAssignedIdentity(generators) + AddRelatedPropertyGeneratorsForUserAssignedIdentity(generators) + userAssignedIdentityGenerator = gen.Struct(reflect.TypeOf(UserAssignedIdentity{}), generators) + + return userAssignedIdentityGenerator +} + +// AddIndependentPropertyGeneratorsForUserAssignedIdentity is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForUserAssignedIdentity(gens map[string]gopter.Gen) { + gens["Type"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForUserAssignedIdentity is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForUserAssignedIdentity(gens map[string]gopter.Gen) { + gens["UserAssignedIdentities"] = gen.SliceOf(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 v20221201s.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. +// We first initialize userAssignedIdentity_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 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) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForUserAssignedIdentity_STATUS(generators) + AddRelatedPropertyGeneratorsForUserAssignedIdentity_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["TenantId"] = gen.PtrOf(gen.AlphaString()) + gens["Type"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForUserAssignedIdentity_STATUS is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForUserAssignedIdentity_STATUS(gens map[string]gopter.Gen) { + gens["UserAssignedIdentities"] = gen.MapOf(gen.AlphaString(), UserIdentity_STATUSGenerator()) +} + +func Test_FlexibleServerOperatorConfigMaps_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from FlexibleServerOperatorConfigMaps to FlexibleServerOperatorConfigMaps via AssignProperties_To_FlexibleServerOperatorConfigMaps & AssignProperties_From_FlexibleServerOperatorConfigMaps returns original", + prop.ForAll(RunPropertyAssignmentTestForFlexibleServerOperatorConfigMaps, FlexibleServerOperatorConfigMapsGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForFlexibleServerOperatorConfigMaps tests if a specific instance of FlexibleServerOperatorConfigMaps can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForFlexibleServerOperatorConfigMaps(subject FlexibleServerOperatorConfigMaps) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20221201s.FlexibleServerOperatorConfigMaps + err := copied.AssignProperties_To_FlexibleServerOperatorConfigMaps(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual FlexibleServerOperatorConfigMaps + err = actual.AssignProperties_From_FlexibleServerOperatorConfigMaps(&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_FlexibleServerOperatorConfigMaps_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of FlexibleServerOperatorConfigMaps via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServerOperatorConfigMaps, FlexibleServerOperatorConfigMapsGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServerOperatorConfigMaps runs a test to see if a specific instance of FlexibleServerOperatorConfigMaps round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServerOperatorConfigMaps(subject FlexibleServerOperatorConfigMaps) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServerOperatorConfigMaps + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of FlexibleServerOperatorConfigMaps instances for property testing - lazily instantiated by +// FlexibleServerOperatorConfigMapsGenerator() +var flexibleServerOperatorConfigMapsGenerator gopter.Gen + +// FlexibleServerOperatorConfigMapsGenerator returns a generator of FlexibleServerOperatorConfigMaps instances for property testing. +func FlexibleServerOperatorConfigMapsGenerator() gopter.Gen { + if flexibleServerOperatorConfigMapsGenerator != nil { + return flexibleServerOperatorConfigMapsGenerator + } + + generators := make(map[string]gopter.Gen) + flexibleServerOperatorConfigMapsGenerator = gen.Struct(reflect.TypeOf(FlexibleServerOperatorConfigMaps{}), generators) + + return flexibleServerOperatorConfigMapsGenerator +} + +func Test_FlexibleServerOperatorSecrets_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from FlexibleServerOperatorSecrets to FlexibleServerOperatorSecrets via AssignProperties_To_FlexibleServerOperatorSecrets & AssignProperties_From_FlexibleServerOperatorSecrets returns original", + prop.ForAll(RunPropertyAssignmentTestForFlexibleServerOperatorSecrets, FlexibleServerOperatorSecretsGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForFlexibleServerOperatorSecrets tests if a specific instance of FlexibleServerOperatorSecrets can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForFlexibleServerOperatorSecrets(subject FlexibleServerOperatorSecrets) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20221201s.FlexibleServerOperatorSecrets + err := copied.AssignProperties_To_FlexibleServerOperatorSecrets(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual FlexibleServerOperatorSecrets + err = actual.AssignProperties_From_FlexibleServerOperatorSecrets(&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_FlexibleServerOperatorSecrets_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 100 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of FlexibleServerOperatorSecrets via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServerOperatorSecrets, FlexibleServerOperatorSecretsGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServerOperatorSecrets runs a test to see if a specific instance of FlexibleServerOperatorSecrets round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServerOperatorSecrets(subject FlexibleServerOperatorSecrets) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServerOperatorSecrets + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of FlexibleServerOperatorSecrets instances for property testing - lazily instantiated by +// FlexibleServerOperatorSecretsGenerator() +var flexibleServerOperatorSecretsGenerator gopter.Gen + +// FlexibleServerOperatorSecretsGenerator returns a generator of FlexibleServerOperatorSecrets instances for property testing. +func FlexibleServerOperatorSecretsGenerator() gopter.Gen { + if flexibleServerOperatorSecretsGenerator != nil { + return flexibleServerOperatorSecretsGenerator + } + + generators := make(map[string]gopter.Gen) + flexibleServerOperatorSecretsGenerator = gen.Struct(reflect.TypeOf(FlexibleServerOperatorSecrets{}), generators) + + return flexibleServerOperatorSecretsGenerator +} + +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 v20221201s.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_UserIdentity_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from UserIdentity_STATUS to UserIdentity_STATUS via AssignProperties_To_UserIdentity_STATUS & AssignProperties_From_UserIdentity_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForUserIdentity_STATUS, UserIdentity_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForUserIdentity_STATUS tests if a specific instance of UserIdentity_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForUserIdentity_STATUS(subject UserIdentity_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 v20221201s.UserIdentity_STATUS + err := copied.AssignProperties_To_UserIdentity_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual UserIdentity_STATUS + err = actual.AssignProperties_From_UserIdentity_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_UserIdentity_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of UserIdentity_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForUserIdentity_STATUS, UserIdentity_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForUserIdentity_STATUS runs a test to see if a specific instance of UserIdentity_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForUserIdentity_STATUS(subject UserIdentity_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual UserIdentity_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of UserIdentity_STATUS instances for property testing - lazily instantiated by +// UserIdentity_STATUSGenerator() +var userIdentity_STATUSGenerator gopter.Gen + +// UserIdentity_STATUSGenerator returns a generator of UserIdentity_STATUS instances for property testing. +func UserIdentity_STATUSGenerator() gopter.Gen { + if userIdentity_STATUSGenerator != nil { + return userIdentity_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForUserIdentity_STATUS(generators) + userIdentity_STATUSGenerator = gen.Struct(reflect.TypeOf(UserIdentity_STATUS{}), generators) + + return userIdentity_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForUserIdentity_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForUserIdentity_STATUS(gens map[string]gopter.Gen) { + gens["ClientId"] = gen.PtrOf(gen.AlphaString()) + gens["PrincipalId"] = gen.PtrOf(gen.AlphaString()) +} diff --git a/v2/api/dbforpostgresql/v1api20230601preview/storage/flexible_servers_configuration_types_gen.go b/v2/api/dbforpostgresql/v1api20230601preview/storage/flexible_servers_configuration_types_gen.go new file mode 100644 index 00000000000..5fae7fb533c --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/storage/flexible_servers_configuration_types_gen.go @@ -0,0 +1,667 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package storage + +import ( + "fmt" + v20221201s "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20221201/storage" + "github.com/Azure/azure-service-operator/v2/pkg/genruntime" + "github.com/Azure/azure-service-operator/v2/pkg/genruntime/conditions" + "github.com/pkg/errors" + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/runtime/schema" + "sigs.k8s.io/controller-runtime/pkg/conversion" +) + +// +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" +// Storage version of v1api20230601preview.FlexibleServersConfiguration +// Generator information: +// - Generated from: /postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2023-06-01-preview/Configuration.json +// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/flexibleServers/{serverName}/configurations/{configurationName} +type FlexibleServersConfiguration struct { + metav1.TypeMeta `json:",inline"` + metav1.ObjectMeta `json:"metadata,omitempty"` + Spec FlexibleServers_Configuration_Spec `json:"spec,omitempty"` + Status FlexibleServers_Configuration_STATUS `json:"status,omitempty"` +} + +var _ conditions.Conditioner = &FlexibleServersConfiguration{} + +// GetConditions returns the conditions of the resource +func (configuration *FlexibleServersConfiguration) GetConditions() conditions.Conditions { + return configuration.Status.Conditions +} + +// SetConditions sets the conditions on the resource status +func (configuration *FlexibleServersConfiguration) SetConditions(conditions conditions.Conditions) { + configuration.Status.Conditions = conditions +} + +var _ conversion.Convertible = &FlexibleServersConfiguration{} + +// ConvertFrom populates our FlexibleServersConfiguration from the provided hub FlexibleServersConfiguration +func (configuration *FlexibleServersConfiguration) ConvertFrom(hub conversion.Hub) error { + source, ok := hub.(*v20221201s.FlexibleServersConfiguration) + if !ok { + return fmt.Errorf("expected dbforpostgresql/v1api20221201/storage/FlexibleServersConfiguration but received %T instead", hub) + } + + return configuration.AssignProperties_From_FlexibleServersConfiguration(source) +} + +// ConvertTo populates the provided hub FlexibleServersConfiguration from our FlexibleServersConfiguration +func (configuration *FlexibleServersConfiguration) ConvertTo(hub conversion.Hub) error { + destination, ok := hub.(*v20221201s.FlexibleServersConfiguration) + if !ok { + return fmt.Errorf("expected dbforpostgresql/v1api20221201/storage/FlexibleServersConfiguration but received %T instead", hub) + } + + return configuration.AssignProperties_To_FlexibleServersConfiguration(destination) +} + +var _ genruntime.KubernetesResource = &FlexibleServersConfiguration{} + +// AzureName returns the Azure name of the resource +func (configuration *FlexibleServersConfiguration) AzureName() string { + return configuration.Spec.AzureName +} + +// GetAPIVersion returns the ARM API version of the resource. This is always "2023-06-01-preview" +func (configuration FlexibleServersConfiguration) GetAPIVersion() string { + return string(APIVersion_Value) +} + +// GetResourceScope returns the scope of the resource +func (configuration *FlexibleServersConfiguration) GetResourceScope() genruntime.ResourceScope { + return genruntime.ResourceScopeResourceGroup +} + +// GetSpec returns the specification of this resource +func (configuration *FlexibleServersConfiguration) GetSpec() genruntime.ConvertibleSpec { + return &configuration.Spec +} + +// GetStatus returns the status of this resource +func (configuration *FlexibleServersConfiguration) GetStatus() genruntime.ConvertibleStatus { + return &configuration.Status +} + +// GetSupportedOperations returns the operations supported by the resource +func (configuration *FlexibleServersConfiguration) GetSupportedOperations() []genruntime.ResourceOperation { + return []genruntime.ResourceOperation{ + genruntime.ResourceOperationGet, + genruntime.ResourceOperationPut, + } +} + +// GetType returns the ARM Type of the resource. This is always "Microsoft.DBforPostgreSQL/flexibleServers/configurations" +func (configuration *FlexibleServersConfiguration) GetType() string { + return "Microsoft.DBforPostgreSQL/flexibleServers/configurations" +} + +// NewEmptyStatus returns a new empty (blank) status +func (configuration *FlexibleServersConfiguration) NewEmptyStatus() genruntime.ConvertibleStatus { + return &FlexibleServers_Configuration_STATUS{} +} + +// Owner returns the ResourceReference of the owner +func (configuration *FlexibleServersConfiguration) Owner() *genruntime.ResourceReference { + group, kind := genruntime.LookupOwnerGroupKind(configuration.Spec) + return configuration.Spec.Owner.AsResourceReference(group, kind) +} + +// SetStatus sets the status of this resource +func (configuration *FlexibleServersConfiguration) SetStatus(status genruntime.ConvertibleStatus) error { + // If we have exactly the right type of status, assign it + if st, ok := status.(*FlexibleServers_Configuration_STATUS); ok { + configuration.Status = *st + return nil + } + + // Convert status to required version + var st FlexibleServers_Configuration_STATUS + err := status.ConvertStatusTo(&st) + if err != nil { + return errors.Wrap(err, "failed to convert status") + } + + configuration.Status = st + return nil +} + +// AssignProperties_From_FlexibleServersConfiguration populates our FlexibleServersConfiguration from the provided source FlexibleServersConfiguration +func (configuration *FlexibleServersConfiguration) AssignProperties_From_FlexibleServersConfiguration(source *v20221201s.FlexibleServersConfiguration) error { + + // ObjectMeta + configuration.ObjectMeta = *source.ObjectMeta.DeepCopy() + + // Spec + var spec FlexibleServers_Configuration_Spec + err := spec.AssignProperties_From_FlexibleServers_Configuration_Spec(&source.Spec) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_FlexibleServers_Configuration_Spec() to populate field Spec") + } + configuration.Spec = spec + + // Status + var status FlexibleServers_Configuration_STATUS + err = status.AssignProperties_From_FlexibleServers_Configuration_STATUS(&source.Status) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_FlexibleServers_Configuration_STATUS() to populate field Status") + } + configuration.Status = status + + // Invoke the augmentConversionForFlexibleServersConfiguration interface (if implemented) to customize the conversion + var configurationAsAny any = configuration + if augmentedConfiguration, ok := configurationAsAny.(augmentConversionForFlexibleServersConfiguration); ok { + err := augmentedConfiguration.AssignPropertiesFrom(source) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesFrom() for conversion") + } + } + + // No error + return nil +} + +// AssignProperties_To_FlexibleServersConfiguration populates the provided destination FlexibleServersConfiguration from our FlexibleServersConfiguration +func (configuration *FlexibleServersConfiguration) AssignProperties_To_FlexibleServersConfiguration(destination *v20221201s.FlexibleServersConfiguration) error { + + // ObjectMeta + destination.ObjectMeta = *configuration.ObjectMeta.DeepCopy() + + // Spec + var spec v20221201s.FlexibleServers_Configuration_Spec + err := configuration.Spec.AssignProperties_To_FlexibleServers_Configuration_Spec(&spec) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_FlexibleServers_Configuration_Spec() to populate field Spec") + } + destination.Spec = spec + + // Status + var status v20221201s.FlexibleServers_Configuration_STATUS + err = configuration.Status.AssignProperties_To_FlexibleServers_Configuration_STATUS(&status) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_FlexibleServers_Configuration_STATUS() to populate field Status") + } + destination.Status = status + + // Invoke the augmentConversionForFlexibleServersConfiguration interface (if implemented) to customize the conversion + var configurationAsAny any = configuration + if augmentedConfiguration, ok := configurationAsAny.(augmentConversionForFlexibleServersConfiguration); ok { + err := augmentedConfiguration.AssignPropertiesTo(destination) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesTo() for conversion") + } + } + + // No error + return nil +} + +// OriginalGVK returns a GroupValueKind for the original API version used to create the resource +func (configuration *FlexibleServersConfiguration) OriginalGVK() *schema.GroupVersionKind { + return &schema.GroupVersionKind{ + Group: GroupVersion.Group, + Version: configuration.Spec.OriginalVersion, + Kind: "FlexibleServersConfiguration", + } +} + +// +kubebuilder:object:root=true +// Storage version of v1api20230601preview.FlexibleServersConfiguration +// Generator information: +// - Generated from: /postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2023-06-01-preview/Configuration.json +// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/flexibleServers/{serverName}/configurations/{configurationName} +type FlexibleServersConfigurationList struct { + metav1.TypeMeta `json:",inline"` + metav1.ListMeta `json:"metadata,omitempty"` + Items []FlexibleServersConfiguration `json:"items"` +} + +type augmentConversionForFlexibleServersConfiguration interface { + AssignPropertiesFrom(src *v20221201s.FlexibleServersConfiguration) error + AssignPropertiesTo(dst *v20221201s.FlexibleServersConfiguration) error +} + +// Storage version of v1api20230601preview.FlexibleServers_Configuration_Spec +type FlexibleServers_Configuration_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"` + 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 dbforpostgresql.azure.com/FlexibleServer resource + Owner *genruntime.KnownResourceReference `group:"dbforpostgresql.azure.com" json:"owner,omitempty" kind:"FlexibleServer"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + Source *string `json:"source,omitempty"` + Value *string `json:"value,omitempty"` +} + +var _ genruntime.ConvertibleSpec = &FlexibleServers_Configuration_Spec{} + +// ConvertSpecFrom populates our FlexibleServers_Configuration_Spec from the provided source +func (configuration *FlexibleServers_Configuration_Spec) ConvertSpecFrom(source genruntime.ConvertibleSpec) error { + src, ok := source.(*v20221201s.FlexibleServers_Configuration_Spec) + if ok { + // Populate our instance from source + return configuration.AssignProperties_From_FlexibleServers_Configuration_Spec(src) + } + + // Convert to an intermediate form + src = &v20221201s.FlexibleServers_Configuration_Spec{} + err := src.ConvertSpecFrom(source) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertSpecFrom()") + } + + // Update our instance from src + err = configuration.AssignProperties_From_FlexibleServers_Configuration_Spec(src) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertSpecFrom()") + } + + return nil +} + +// ConvertSpecTo populates the provided destination from our FlexibleServers_Configuration_Spec +func (configuration *FlexibleServers_Configuration_Spec) ConvertSpecTo(destination genruntime.ConvertibleSpec) error { + dst, ok := destination.(*v20221201s.FlexibleServers_Configuration_Spec) + if ok { + // Populate destination from our instance + return configuration.AssignProperties_To_FlexibleServers_Configuration_Spec(dst) + } + + // Convert to an intermediate form + dst = &v20221201s.FlexibleServers_Configuration_Spec{} + err := configuration.AssignProperties_To_FlexibleServers_Configuration_Spec(dst) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertSpecTo()") + } + + // Update dst from our instance + err = dst.ConvertSpecTo(destination) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertSpecTo()") + } + + return nil +} + +// AssignProperties_From_FlexibleServers_Configuration_Spec populates our FlexibleServers_Configuration_Spec from the provided source FlexibleServers_Configuration_Spec +func (configuration *FlexibleServers_Configuration_Spec) AssignProperties_From_FlexibleServers_Configuration_Spec(source *v20221201s.FlexibleServers_Configuration_Spec) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(source.PropertyBag) + + // AzureName + configuration.AzureName = source.AzureName + + // OriginalVersion + configuration.OriginalVersion = source.OriginalVersion + + // Owner + if source.Owner != nil { + owner := source.Owner.Copy() + configuration.Owner = &owner + } else { + configuration.Owner = nil + } + + // Source + configuration.Source = genruntime.ClonePointerToString(source.Source) + + // Value + configuration.Value = genruntime.ClonePointerToString(source.Value) + + // Update the property bag + if len(propertyBag) > 0 { + configuration.PropertyBag = propertyBag + } else { + configuration.PropertyBag = nil + } + + // Invoke the augmentConversionForFlexibleServers_Configuration_Spec interface (if implemented) to customize the conversion + var configurationAsAny any = configuration + if augmentedConfiguration, ok := configurationAsAny.(augmentConversionForFlexibleServers_Configuration_Spec); ok { + err := augmentedConfiguration.AssignPropertiesFrom(source) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesFrom() for conversion") + } + } + + // No error + return nil +} + +// AssignProperties_To_FlexibleServers_Configuration_Spec populates the provided destination FlexibleServers_Configuration_Spec from our FlexibleServers_Configuration_Spec +func (configuration *FlexibleServers_Configuration_Spec) AssignProperties_To_FlexibleServers_Configuration_Spec(destination *v20221201s.FlexibleServers_Configuration_Spec) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(configuration.PropertyBag) + + // AzureName + destination.AzureName = configuration.AzureName + + // OriginalVersion + destination.OriginalVersion = configuration.OriginalVersion + + // Owner + if configuration.Owner != nil { + owner := configuration.Owner.Copy() + destination.Owner = &owner + } else { + destination.Owner = nil + } + + // Source + destination.Source = genruntime.ClonePointerToString(configuration.Source) + + // Value + destination.Value = genruntime.ClonePointerToString(configuration.Value) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // Invoke the augmentConversionForFlexibleServers_Configuration_Spec interface (if implemented) to customize the conversion + var configurationAsAny any = configuration + if augmentedConfiguration, ok := configurationAsAny.(augmentConversionForFlexibleServers_Configuration_Spec); ok { + err := augmentedConfiguration.AssignPropertiesTo(destination) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesTo() for conversion") + } + } + + // No error + return nil +} + +// Storage version of v1api20230601preview.FlexibleServers_Configuration_STATUS +type FlexibleServers_Configuration_STATUS struct { + AllowedValues *string `json:"allowedValues,omitempty"` + Conditions []conditions.Condition `json:"conditions,omitempty"` + DataType *string `json:"dataType,omitempty"` + DefaultValue *string `json:"defaultValue,omitempty"` + Description *string `json:"description,omitempty"` + DocumentationLink *string `json:"documentationLink,omitempty"` + Id *string `json:"id,omitempty"` + IsConfigPendingRestart *bool `json:"isConfigPendingRestart,omitempty"` + IsDynamicConfig *bool `json:"isDynamicConfig,omitempty"` + IsReadOnly *bool `json:"isReadOnly,omitempty"` + Name *string `json:"name,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + Source *string `json:"source,omitempty"` + SystemData *SystemData_STATUS `json:"systemData,omitempty"` + Type *string `json:"type,omitempty"` + Unit *string `json:"unit,omitempty"` + Value *string `json:"value,omitempty"` +} + +var _ genruntime.ConvertibleStatus = &FlexibleServers_Configuration_STATUS{} + +// ConvertStatusFrom populates our FlexibleServers_Configuration_STATUS from the provided source +func (configuration *FlexibleServers_Configuration_STATUS) ConvertStatusFrom(source genruntime.ConvertibleStatus) error { + src, ok := source.(*v20221201s.FlexibleServers_Configuration_STATUS) + if ok { + // Populate our instance from source + return configuration.AssignProperties_From_FlexibleServers_Configuration_STATUS(src) + } + + // Convert to an intermediate form + src = &v20221201s.FlexibleServers_Configuration_STATUS{} + err := src.ConvertStatusFrom(source) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertStatusFrom()") + } + + // Update our instance from src + err = configuration.AssignProperties_From_FlexibleServers_Configuration_STATUS(src) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertStatusFrom()") + } + + return nil +} + +// ConvertStatusTo populates the provided destination from our FlexibleServers_Configuration_STATUS +func (configuration *FlexibleServers_Configuration_STATUS) ConvertStatusTo(destination genruntime.ConvertibleStatus) error { + dst, ok := destination.(*v20221201s.FlexibleServers_Configuration_STATUS) + if ok { + // Populate destination from our instance + return configuration.AssignProperties_To_FlexibleServers_Configuration_STATUS(dst) + } + + // Convert to an intermediate form + dst = &v20221201s.FlexibleServers_Configuration_STATUS{} + err := configuration.AssignProperties_To_FlexibleServers_Configuration_STATUS(dst) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertStatusTo()") + } + + // Update dst from our instance + err = dst.ConvertStatusTo(destination) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertStatusTo()") + } + + return nil +} + +// AssignProperties_From_FlexibleServers_Configuration_STATUS populates our FlexibleServers_Configuration_STATUS from the provided source FlexibleServers_Configuration_STATUS +func (configuration *FlexibleServers_Configuration_STATUS) AssignProperties_From_FlexibleServers_Configuration_STATUS(source *v20221201s.FlexibleServers_Configuration_STATUS) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(source.PropertyBag) + + // AllowedValues + configuration.AllowedValues = genruntime.ClonePointerToString(source.AllowedValues) + + // Conditions + configuration.Conditions = genruntime.CloneSliceOfCondition(source.Conditions) + + // DataType + configuration.DataType = genruntime.ClonePointerToString(source.DataType) + + // DefaultValue + configuration.DefaultValue = genruntime.ClonePointerToString(source.DefaultValue) + + // Description + configuration.Description = genruntime.ClonePointerToString(source.Description) + + // DocumentationLink + configuration.DocumentationLink = genruntime.ClonePointerToString(source.DocumentationLink) + + // Id + configuration.Id = genruntime.ClonePointerToString(source.Id) + + // IsConfigPendingRestart + if source.IsConfigPendingRestart != nil { + isConfigPendingRestart := *source.IsConfigPendingRestart + configuration.IsConfigPendingRestart = &isConfigPendingRestart + } else { + configuration.IsConfigPendingRestart = nil + } + + // IsDynamicConfig + if source.IsDynamicConfig != nil { + isDynamicConfig := *source.IsDynamicConfig + configuration.IsDynamicConfig = &isDynamicConfig + } else { + configuration.IsDynamicConfig = nil + } + + // IsReadOnly + if source.IsReadOnly != nil { + isReadOnly := *source.IsReadOnly + configuration.IsReadOnly = &isReadOnly + } else { + configuration.IsReadOnly = nil + } + + // Name + configuration.Name = genruntime.ClonePointerToString(source.Name) + + // Source + configuration.Source = genruntime.ClonePointerToString(source.Source) + + // SystemData + if source.SystemData != nil { + var systemDatum SystemData_STATUS + err := systemDatum.AssignProperties_From_SystemData_STATUS(source.SystemData) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_SystemData_STATUS() to populate field SystemData") + } + configuration.SystemData = &systemDatum + } else { + configuration.SystemData = nil + } + + // Type + configuration.Type = genruntime.ClonePointerToString(source.Type) + + // Unit + configuration.Unit = genruntime.ClonePointerToString(source.Unit) + + // Value + configuration.Value = genruntime.ClonePointerToString(source.Value) + + // Update the property bag + if len(propertyBag) > 0 { + configuration.PropertyBag = propertyBag + } else { + configuration.PropertyBag = nil + } + + // Invoke the augmentConversionForFlexibleServers_Configuration_STATUS interface (if implemented) to customize the conversion + var configurationAsAny any = configuration + if augmentedConfiguration, ok := configurationAsAny.(augmentConversionForFlexibleServers_Configuration_STATUS); ok { + err := augmentedConfiguration.AssignPropertiesFrom(source) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesFrom() for conversion") + } + } + + // No error + return nil +} + +// AssignProperties_To_FlexibleServers_Configuration_STATUS populates the provided destination FlexibleServers_Configuration_STATUS from our FlexibleServers_Configuration_STATUS +func (configuration *FlexibleServers_Configuration_STATUS) AssignProperties_To_FlexibleServers_Configuration_STATUS(destination *v20221201s.FlexibleServers_Configuration_STATUS) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(configuration.PropertyBag) + + // AllowedValues + destination.AllowedValues = genruntime.ClonePointerToString(configuration.AllowedValues) + + // Conditions + destination.Conditions = genruntime.CloneSliceOfCondition(configuration.Conditions) + + // DataType + destination.DataType = genruntime.ClonePointerToString(configuration.DataType) + + // DefaultValue + destination.DefaultValue = genruntime.ClonePointerToString(configuration.DefaultValue) + + // Description + destination.Description = genruntime.ClonePointerToString(configuration.Description) + + // DocumentationLink + destination.DocumentationLink = genruntime.ClonePointerToString(configuration.DocumentationLink) + + // Id + destination.Id = genruntime.ClonePointerToString(configuration.Id) + + // IsConfigPendingRestart + if configuration.IsConfigPendingRestart != nil { + isConfigPendingRestart := *configuration.IsConfigPendingRestart + destination.IsConfigPendingRestart = &isConfigPendingRestart + } else { + destination.IsConfigPendingRestart = nil + } + + // IsDynamicConfig + if configuration.IsDynamicConfig != nil { + isDynamicConfig := *configuration.IsDynamicConfig + destination.IsDynamicConfig = &isDynamicConfig + } else { + destination.IsDynamicConfig = nil + } + + // IsReadOnly + if configuration.IsReadOnly != nil { + isReadOnly := *configuration.IsReadOnly + destination.IsReadOnly = &isReadOnly + } else { + destination.IsReadOnly = nil + } + + // Name + destination.Name = genruntime.ClonePointerToString(configuration.Name) + + // Source + destination.Source = genruntime.ClonePointerToString(configuration.Source) + + // SystemData + if configuration.SystemData != nil { + var systemDatum v20221201s.SystemData_STATUS + err := configuration.SystemData.AssignProperties_To_SystemData_STATUS(&systemDatum) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_SystemData_STATUS() to populate field SystemData") + } + destination.SystemData = &systemDatum + } else { + destination.SystemData = nil + } + + // Type + destination.Type = genruntime.ClonePointerToString(configuration.Type) + + // Unit + destination.Unit = genruntime.ClonePointerToString(configuration.Unit) + + // Value + destination.Value = genruntime.ClonePointerToString(configuration.Value) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // Invoke the augmentConversionForFlexibleServers_Configuration_STATUS interface (if implemented) to customize the conversion + var configurationAsAny any = configuration + if augmentedConfiguration, ok := configurationAsAny.(augmentConversionForFlexibleServers_Configuration_STATUS); ok { + err := augmentedConfiguration.AssignPropertiesTo(destination) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesTo() for conversion") + } + } + + // No error + return nil +} + +type augmentConversionForFlexibleServers_Configuration_Spec interface { + AssignPropertiesFrom(src *v20221201s.FlexibleServers_Configuration_Spec) error + AssignPropertiesTo(dst *v20221201s.FlexibleServers_Configuration_Spec) error +} + +type augmentConversionForFlexibleServers_Configuration_STATUS interface { + AssignPropertiesFrom(src *v20221201s.FlexibleServers_Configuration_STATUS) error + AssignPropertiesTo(dst *v20221201s.FlexibleServers_Configuration_STATUS) error +} + +func init() { + SchemeBuilder.Register(&FlexibleServersConfiguration{}, &FlexibleServersConfigurationList{}) +} diff --git a/v2/api/dbforpostgresql/v1api20230601preview/storage/flexible_servers_configuration_types_gen_test.go b/v2/api/dbforpostgresql/v1api20230601preview/storage/flexible_servers_configuration_types_gen_test.go new file mode 100644 index 00000000000..d55b74161a8 --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/storage/flexible_servers_configuration_types_gen_test.go @@ -0,0 +1,402 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package storage + +import ( + "encoding/json" + v20221201s "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20221201/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_FlexibleServersConfiguration_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 FlexibleServersConfiguration to hub returns original", + prop.ForAll(RunResourceConversionTestForFlexibleServersConfiguration, FlexibleServersConfigurationGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunResourceConversionTestForFlexibleServersConfiguration tests if a specific instance of FlexibleServersConfiguration round trips to the hub storage version and back losslessly +func RunResourceConversionTestForFlexibleServersConfiguration(subject FlexibleServersConfiguration) string { + // Copy subject to make sure conversion doesn't modify it + copied := subject.DeepCopy() + + // Convert to our hub version + var hub v20221201s.FlexibleServersConfiguration + err := copied.ConvertTo(&hub) + if err != nil { + return err.Error() + } + + // Convert from our hub version + var actual FlexibleServersConfiguration + 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_FlexibleServersConfiguration_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from FlexibleServersConfiguration to FlexibleServersConfiguration via AssignProperties_To_FlexibleServersConfiguration & AssignProperties_From_FlexibleServersConfiguration returns original", + prop.ForAll(RunPropertyAssignmentTestForFlexibleServersConfiguration, FlexibleServersConfigurationGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForFlexibleServersConfiguration tests if a specific instance of FlexibleServersConfiguration can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForFlexibleServersConfiguration(subject FlexibleServersConfiguration) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20221201s.FlexibleServersConfiguration + err := copied.AssignProperties_To_FlexibleServersConfiguration(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual FlexibleServersConfiguration + err = actual.AssignProperties_From_FlexibleServersConfiguration(&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_FlexibleServersConfiguration_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 FlexibleServersConfiguration via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServersConfiguration, FlexibleServersConfigurationGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServersConfiguration runs a test to see if a specific instance of FlexibleServersConfiguration round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServersConfiguration(subject FlexibleServersConfiguration) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServersConfiguration + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of FlexibleServersConfiguration instances for property testing - lazily instantiated by +// FlexibleServersConfigurationGenerator() +var flexibleServersConfigurationGenerator gopter.Gen + +// FlexibleServersConfigurationGenerator returns a generator of FlexibleServersConfiguration instances for property testing. +func FlexibleServersConfigurationGenerator() gopter.Gen { + if flexibleServersConfigurationGenerator != nil { + return flexibleServersConfigurationGenerator + } + + generators := make(map[string]gopter.Gen) + AddRelatedPropertyGeneratorsForFlexibleServersConfiguration(generators) + flexibleServersConfigurationGenerator = gen.Struct(reflect.TypeOf(FlexibleServersConfiguration{}), generators) + + return flexibleServersConfigurationGenerator +} + +// AddRelatedPropertyGeneratorsForFlexibleServersConfiguration is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForFlexibleServersConfiguration(gens map[string]gopter.Gen) { + gens["Spec"] = FlexibleServers_Configuration_SpecGenerator() + gens["Status"] = FlexibleServers_Configuration_STATUSGenerator() +} + +func Test_FlexibleServers_Configuration_Spec_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from FlexibleServers_Configuration_Spec to FlexibleServers_Configuration_Spec via AssignProperties_To_FlexibleServers_Configuration_Spec & AssignProperties_From_FlexibleServers_Configuration_Spec returns original", + prop.ForAll(RunPropertyAssignmentTestForFlexibleServers_Configuration_Spec, FlexibleServers_Configuration_SpecGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForFlexibleServers_Configuration_Spec tests if a specific instance of FlexibleServers_Configuration_Spec can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForFlexibleServers_Configuration_Spec(subject FlexibleServers_Configuration_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 v20221201s.FlexibleServers_Configuration_Spec + err := copied.AssignProperties_To_FlexibleServers_Configuration_Spec(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual FlexibleServers_Configuration_Spec + err = actual.AssignProperties_From_FlexibleServers_Configuration_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_FlexibleServers_Configuration_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 FlexibleServers_Configuration_Spec via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServers_Configuration_Spec, FlexibleServers_Configuration_SpecGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServers_Configuration_Spec runs a test to see if a specific instance of FlexibleServers_Configuration_Spec round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServers_Configuration_Spec(subject FlexibleServers_Configuration_Spec) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServers_Configuration_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 FlexibleServers_Configuration_Spec instances for property testing - lazily instantiated by +// FlexibleServers_Configuration_SpecGenerator() +var flexibleServers_Configuration_SpecGenerator gopter.Gen + +// FlexibleServers_Configuration_SpecGenerator returns a generator of FlexibleServers_Configuration_Spec instances for property testing. +func FlexibleServers_Configuration_SpecGenerator() gopter.Gen { + if flexibleServers_Configuration_SpecGenerator != nil { + return flexibleServers_Configuration_SpecGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServers_Configuration_Spec(generators) + flexibleServers_Configuration_SpecGenerator = gen.Struct(reflect.TypeOf(FlexibleServers_Configuration_Spec{}), generators) + + return flexibleServers_Configuration_SpecGenerator +} + +// AddIndependentPropertyGeneratorsForFlexibleServers_Configuration_Spec is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForFlexibleServers_Configuration_Spec(gens map[string]gopter.Gen) { + gens["AzureName"] = gen.AlphaString() + gens["OriginalVersion"] = gen.AlphaString() + gens["Source"] = gen.PtrOf(gen.AlphaString()) + gens["Value"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_FlexibleServers_Configuration_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from FlexibleServers_Configuration_STATUS to FlexibleServers_Configuration_STATUS via AssignProperties_To_FlexibleServers_Configuration_STATUS & AssignProperties_From_FlexibleServers_Configuration_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForFlexibleServers_Configuration_STATUS, FlexibleServers_Configuration_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForFlexibleServers_Configuration_STATUS tests if a specific instance of FlexibleServers_Configuration_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForFlexibleServers_Configuration_STATUS(subject FlexibleServers_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 v20221201s.FlexibleServers_Configuration_STATUS + err := copied.AssignProperties_To_FlexibleServers_Configuration_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual FlexibleServers_Configuration_STATUS + err = actual.AssignProperties_From_FlexibleServers_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_FlexibleServers_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 FlexibleServers_Configuration_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServers_Configuration_STATUS, FlexibleServers_Configuration_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServers_Configuration_STATUS runs a test to see if a specific instance of FlexibleServers_Configuration_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServers_Configuration_STATUS(subject FlexibleServers_Configuration_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServers_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 FlexibleServers_Configuration_STATUS instances for property testing - lazily instantiated by +// FlexibleServers_Configuration_STATUSGenerator() +var flexibleServers_Configuration_STATUSGenerator gopter.Gen + +// FlexibleServers_Configuration_STATUSGenerator returns a generator of FlexibleServers_Configuration_STATUS instances for property testing. +// We first initialize flexibleServers_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 FlexibleServers_Configuration_STATUSGenerator() gopter.Gen { + if flexibleServers_Configuration_STATUSGenerator != nil { + return flexibleServers_Configuration_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServers_Configuration_STATUS(generators) + flexibleServers_Configuration_STATUSGenerator = gen.Struct(reflect.TypeOf(FlexibleServers_Configuration_STATUS{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServers_Configuration_STATUS(generators) + AddRelatedPropertyGeneratorsForFlexibleServers_Configuration_STATUS(generators) + flexibleServers_Configuration_STATUSGenerator = gen.Struct(reflect.TypeOf(FlexibleServers_Configuration_STATUS{}), generators) + + return flexibleServers_Configuration_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForFlexibleServers_Configuration_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForFlexibleServers_Configuration_STATUS(gens map[string]gopter.Gen) { + gens["AllowedValues"] = gen.PtrOf(gen.AlphaString()) + gens["DataType"] = gen.PtrOf(gen.AlphaString()) + gens["DefaultValue"] = gen.PtrOf(gen.AlphaString()) + gens["Description"] = gen.PtrOf(gen.AlphaString()) + gens["DocumentationLink"] = gen.PtrOf(gen.AlphaString()) + gens["Id"] = gen.PtrOf(gen.AlphaString()) + gens["IsConfigPendingRestart"] = gen.PtrOf(gen.Bool()) + gens["IsDynamicConfig"] = gen.PtrOf(gen.Bool()) + gens["IsReadOnly"] = gen.PtrOf(gen.Bool()) + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["Source"] = gen.PtrOf(gen.AlphaString()) + gens["Type"] = gen.PtrOf(gen.AlphaString()) + gens["Unit"] = gen.PtrOf(gen.AlphaString()) + gens["Value"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForFlexibleServers_Configuration_STATUS is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForFlexibleServers_Configuration_STATUS(gens map[string]gopter.Gen) { + gens["SystemData"] = gen.PtrOf(SystemData_STATUSGenerator()) +} diff --git a/v2/api/dbforpostgresql/v1api20230601preview/storage/flexible_servers_database_types_gen.go b/v2/api/dbforpostgresql/v1api20230601preview/storage/flexible_servers_database_types_gen.go new file mode 100644 index 00000000000..489c2c21c22 --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/storage/flexible_servers_database_types_gen.go @@ -0,0 +1,575 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package storage + +import ( + "fmt" + v20221201s "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20221201/storage" + "github.com/Azure/azure-service-operator/v2/pkg/genruntime" + "github.com/Azure/azure-service-operator/v2/pkg/genruntime/conditions" + "github.com/pkg/errors" + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/runtime/schema" + "sigs.k8s.io/controller-runtime/pkg/conversion" +) + +// +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" +// Storage version of v1api20230601preview.FlexibleServersDatabase +// Generator information: +// - Generated from: /postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2023-06-01-preview/Databases.json +// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/flexibleServers/{serverName}/databases/{databaseName} +type FlexibleServersDatabase struct { + metav1.TypeMeta `json:",inline"` + metav1.ObjectMeta `json:"metadata,omitempty"` + Spec FlexibleServers_Database_Spec `json:"spec,omitempty"` + Status FlexibleServers_Database_STATUS `json:"status,omitempty"` +} + +var _ conditions.Conditioner = &FlexibleServersDatabase{} + +// GetConditions returns the conditions of the resource +func (database *FlexibleServersDatabase) GetConditions() conditions.Conditions { + return database.Status.Conditions +} + +// SetConditions sets the conditions on the resource status +func (database *FlexibleServersDatabase) SetConditions(conditions conditions.Conditions) { + database.Status.Conditions = conditions +} + +var _ conversion.Convertible = &FlexibleServersDatabase{} + +// ConvertFrom populates our FlexibleServersDatabase from the provided hub FlexibleServersDatabase +func (database *FlexibleServersDatabase) ConvertFrom(hub conversion.Hub) error { + source, ok := hub.(*v20221201s.FlexibleServersDatabase) + if !ok { + return fmt.Errorf("expected dbforpostgresql/v1api20221201/storage/FlexibleServersDatabase but received %T instead", hub) + } + + return database.AssignProperties_From_FlexibleServersDatabase(source) +} + +// ConvertTo populates the provided hub FlexibleServersDatabase from our FlexibleServersDatabase +func (database *FlexibleServersDatabase) ConvertTo(hub conversion.Hub) error { + destination, ok := hub.(*v20221201s.FlexibleServersDatabase) + if !ok { + return fmt.Errorf("expected dbforpostgresql/v1api20221201/storage/FlexibleServersDatabase but received %T instead", hub) + } + + return database.AssignProperties_To_FlexibleServersDatabase(destination) +} + +var _ genruntime.KubernetesResource = &FlexibleServersDatabase{} + +// AzureName returns the Azure name of the resource +func (database *FlexibleServersDatabase) AzureName() string { + return database.Spec.AzureName +} + +// GetAPIVersion returns the ARM API version of the resource. This is always "2023-06-01-preview" +func (database FlexibleServersDatabase) GetAPIVersion() string { + return string(APIVersion_Value) +} + +// GetResourceScope returns the scope of the resource +func (database *FlexibleServersDatabase) GetResourceScope() genruntime.ResourceScope { + return genruntime.ResourceScopeResourceGroup +} + +// GetSpec returns the specification of this resource +func (database *FlexibleServersDatabase) GetSpec() genruntime.ConvertibleSpec { + return &database.Spec +} + +// GetStatus returns the status of this resource +func (database *FlexibleServersDatabase) GetStatus() genruntime.ConvertibleStatus { + return &database.Status +} + +// GetSupportedOperations returns the operations supported by the resource +func (database *FlexibleServersDatabase) GetSupportedOperations() []genruntime.ResourceOperation { + return []genruntime.ResourceOperation{ + genruntime.ResourceOperationDelete, + genruntime.ResourceOperationGet, + genruntime.ResourceOperationPut, + } +} + +// GetType returns the ARM Type of the resource. This is always "Microsoft.DBforPostgreSQL/flexibleServers/databases" +func (database *FlexibleServersDatabase) GetType() string { + return "Microsoft.DBforPostgreSQL/flexibleServers/databases" +} + +// NewEmptyStatus returns a new empty (blank) status +func (database *FlexibleServersDatabase) NewEmptyStatus() genruntime.ConvertibleStatus { + return &FlexibleServers_Database_STATUS{} +} + +// Owner returns the ResourceReference of the owner +func (database *FlexibleServersDatabase) Owner() *genruntime.ResourceReference { + group, kind := genruntime.LookupOwnerGroupKind(database.Spec) + return database.Spec.Owner.AsResourceReference(group, kind) +} + +// SetStatus sets the status of this resource +func (database *FlexibleServersDatabase) SetStatus(status genruntime.ConvertibleStatus) error { + // If we have exactly the right type of status, assign it + if st, ok := status.(*FlexibleServers_Database_STATUS); ok { + database.Status = *st + return nil + } + + // Convert status to required version + var st FlexibleServers_Database_STATUS + err := status.ConvertStatusTo(&st) + if err != nil { + return errors.Wrap(err, "failed to convert status") + } + + database.Status = st + return nil +} + +// AssignProperties_From_FlexibleServersDatabase populates our FlexibleServersDatabase from the provided source FlexibleServersDatabase +func (database *FlexibleServersDatabase) AssignProperties_From_FlexibleServersDatabase(source *v20221201s.FlexibleServersDatabase) error { + + // ObjectMeta + database.ObjectMeta = *source.ObjectMeta.DeepCopy() + + // Spec + var spec FlexibleServers_Database_Spec + err := spec.AssignProperties_From_FlexibleServers_Database_Spec(&source.Spec) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_FlexibleServers_Database_Spec() to populate field Spec") + } + database.Spec = spec + + // Status + var status FlexibleServers_Database_STATUS + err = status.AssignProperties_From_FlexibleServers_Database_STATUS(&source.Status) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_FlexibleServers_Database_STATUS() to populate field Status") + } + database.Status = status + + // Invoke the augmentConversionForFlexibleServersDatabase interface (if implemented) to customize the conversion + var databaseAsAny any = database + if augmentedDatabase, ok := databaseAsAny.(augmentConversionForFlexibleServersDatabase); ok { + err := augmentedDatabase.AssignPropertiesFrom(source) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesFrom() for conversion") + } + } + + // No error + return nil +} + +// AssignProperties_To_FlexibleServersDatabase populates the provided destination FlexibleServersDatabase from our FlexibleServersDatabase +func (database *FlexibleServersDatabase) AssignProperties_To_FlexibleServersDatabase(destination *v20221201s.FlexibleServersDatabase) error { + + // ObjectMeta + destination.ObjectMeta = *database.ObjectMeta.DeepCopy() + + // Spec + var spec v20221201s.FlexibleServers_Database_Spec + err := database.Spec.AssignProperties_To_FlexibleServers_Database_Spec(&spec) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_FlexibleServers_Database_Spec() to populate field Spec") + } + destination.Spec = spec + + // Status + var status v20221201s.FlexibleServers_Database_STATUS + err = database.Status.AssignProperties_To_FlexibleServers_Database_STATUS(&status) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_FlexibleServers_Database_STATUS() to populate field Status") + } + destination.Status = status + + // Invoke the augmentConversionForFlexibleServersDatabase interface (if implemented) to customize the conversion + var databaseAsAny any = database + if augmentedDatabase, ok := databaseAsAny.(augmentConversionForFlexibleServersDatabase); ok { + err := augmentedDatabase.AssignPropertiesTo(destination) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesTo() for conversion") + } + } + + // No error + return nil +} + +// OriginalGVK returns a GroupValueKind for the original API version used to create the resource +func (database *FlexibleServersDatabase) OriginalGVK() *schema.GroupVersionKind { + return &schema.GroupVersionKind{ + Group: GroupVersion.Group, + Version: database.Spec.OriginalVersion, + Kind: "FlexibleServersDatabase", + } +} + +// +kubebuilder:object:root=true +// Storage version of v1api20230601preview.FlexibleServersDatabase +// Generator information: +// - Generated from: /postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2023-06-01-preview/Databases.json +// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/flexibleServers/{serverName}/databases/{databaseName} +type FlexibleServersDatabaseList struct { + metav1.TypeMeta `json:",inline"` + metav1.ListMeta `json:"metadata,omitempty"` + Items []FlexibleServersDatabase `json:"items"` +} + +type augmentConversionForFlexibleServersDatabase interface { + AssignPropertiesFrom(src *v20221201s.FlexibleServersDatabase) error + AssignPropertiesTo(dst *v20221201s.FlexibleServersDatabase) error +} + +// Storage version of v1api20230601preview.FlexibleServers_Database_Spec +type FlexibleServers_Database_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"` + Charset *string `json:"charset,omitempty"` + Collation *string `json:"collation,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 dbforpostgresql.azure.com/FlexibleServer resource + Owner *genruntime.KnownResourceReference `group:"dbforpostgresql.azure.com" json:"owner,omitempty" kind:"FlexibleServer"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` +} + +var _ genruntime.ConvertibleSpec = &FlexibleServers_Database_Spec{} + +// ConvertSpecFrom populates our FlexibleServers_Database_Spec from the provided source +func (database *FlexibleServers_Database_Spec) ConvertSpecFrom(source genruntime.ConvertibleSpec) error { + src, ok := source.(*v20221201s.FlexibleServers_Database_Spec) + if ok { + // Populate our instance from source + return database.AssignProperties_From_FlexibleServers_Database_Spec(src) + } + + // Convert to an intermediate form + src = &v20221201s.FlexibleServers_Database_Spec{} + err := src.ConvertSpecFrom(source) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertSpecFrom()") + } + + // Update our instance from src + err = database.AssignProperties_From_FlexibleServers_Database_Spec(src) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertSpecFrom()") + } + + return nil +} + +// ConvertSpecTo populates the provided destination from our FlexibleServers_Database_Spec +func (database *FlexibleServers_Database_Spec) ConvertSpecTo(destination genruntime.ConvertibleSpec) error { + dst, ok := destination.(*v20221201s.FlexibleServers_Database_Spec) + if ok { + // Populate destination from our instance + return database.AssignProperties_To_FlexibleServers_Database_Spec(dst) + } + + // Convert to an intermediate form + dst = &v20221201s.FlexibleServers_Database_Spec{} + err := database.AssignProperties_To_FlexibleServers_Database_Spec(dst) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertSpecTo()") + } + + // Update dst from our instance + err = dst.ConvertSpecTo(destination) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertSpecTo()") + } + + return nil +} + +// AssignProperties_From_FlexibleServers_Database_Spec populates our FlexibleServers_Database_Spec from the provided source FlexibleServers_Database_Spec +func (database *FlexibleServers_Database_Spec) AssignProperties_From_FlexibleServers_Database_Spec(source *v20221201s.FlexibleServers_Database_Spec) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(source.PropertyBag) + + // AzureName + database.AzureName = source.AzureName + + // Charset + database.Charset = genruntime.ClonePointerToString(source.Charset) + + // Collation + database.Collation = genruntime.ClonePointerToString(source.Collation) + + // OriginalVersion + database.OriginalVersion = source.OriginalVersion + + // Owner + if source.Owner != nil { + owner := source.Owner.Copy() + database.Owner = &owner + } else { + database.Owner = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + database.PropertyBag = propertyBag + } else { + database.PropertyBag = nil + } + + // Invoke the augmentConversionForFlexibleServers_Database_Spec interface (if implemented) to customize the conversion + var databaseAsAny any = database + if augmentedDatabase, ok := databaseAsAny.(augmentConversionForFlexibleServers_Database_Spec); ok { + err := augmentedDatabase.AssignPropertiesFrom(source) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesFrom() for conversion") + } + } + + // No error + return nil +} + +// AssignProperties_To_FlexibleServers_Database_Spec populates the provided destination FlexibleServers_Database_Spec from our FlexibleServers_Database_Spec +func (database *FlexibleServers_Database_Spec) AssignProperties_To_FlexibleServers_Database_Spec(destination *v20221201s.FlexibleServers_Database_Spec) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(database.PropertyBag) + + // AzureName + destination.AzureName = database.AzureName + + // Charset + destination.Charset = genruntime.ClonePointerToString(database.Charset) + + // Collation + destination.Collation = genruntime.ClonePointerToString(database.Collation) + + // OriginalVersion + destination.OriginalVersion = database.OriginalVersion + + // Owner + if database.Owner != nil { + owner := database.Owner.Copy() + destination.Owner = &owner + } else { + destination.Owner = nil + } + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // Invoke the augmentConversionForFlexibleServers_Database_Spec interface (if implemented) to customize the conversion + var databaseAsAny any = database + if augmentedDatabase, ok := databaseAsAny.(augmentConversionForFlexibleServers_Database_Spec); ok { + err := augmentedDatabase.AssignPropertiesTo(destination) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesTo() for conversion") + } + } + + // No error + return nil +} + +// Storage version of v1api20230601preview.FlexibleServers_Database_STATUS +type FlexibleServers_Database_STATUS struct { + Charset *string `json:"charset,omitempty"` + Collation *string `json:"collation,omitempty"` + Conditions []conditions.Condition `json:"conditions,omitempty"` + Id *string `json:"id,omitempty"` + Name *string `json:"name,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + SystemData *SystemData_STATUS `json:"systemData,omitempty"` + Type *string `json:"type,omitempty"` +} + +var _ genruntime.ConvertibleStatus = &FlexibleServers_Database_STATUS{} + +// ConvertStatusFrom populates our FlexibleServers_Database_STATUS from the provided source +func (database *FlexibleServers_Database_STATUS) ConvertStatusFrom(source genruntime.ConvertibleStatus) error { + src, ok := source.(*v20221201s.FlexibleServers_Database_STATUS) + if ok { + // Populate our instance from source + return database.AssignProperties_From_FlexibleServers_Database_STATUS(src) + } + + // Convert to an intermediate form + src = &v20221201s.FlexibleServers_Database_STATUS{} + err := src.ConvertStatusFrom(source) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertStatusFrom()") + } + + // Update our instance from src + err = database.AssignProperties_From_FlexibleServers_Database_STATUS(src) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertStatusFrom()") + } + + return nil +} + +// ConvertStatusTo populates the provided destination from our FlexibleServers_Database_STATUS +func (database *FlexibleServers_Database_STATUS) ConvertStatusTo(destination genruntime.ConvertibleStatus) error { + dst, ok := destination.(*v20221201s.FlexibleServers_Database_STATUS) + if ok { + // Populate destination from our instance + return database.AssignProperties_To_FlexibleServers_Database_STATUS(dst) + } + + // Convert to an intermediate form + dst = &v20221201s.FlexibleServers_Database_STATUS{} + err := database.AssignProperties_To_FlexibleServers_Database_STATUS(dst) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertStatusTo()") + } + + // Update dst from our instance + err = dst.ConvertStatusTo(destination) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertStatusTo()") + } + + return nil +} + +// AssignProperties_From_FlexibleServers_Database_STATUS populates our FlexibleServers_Database_STATUS from the provided source FlexibleServers_Database_STATUS +func (database *FlexibleServers_Database_STATUS) AssignProperties_From_FlexibleServers_Database_STATUS(source *v20221201s.FlexibleServers_Database_STATUS) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(source.PropertyBag) + + // Charset + database.Charset = genruntime.ClonePointerToString(source.Charset) + + // Collation + database.Collation = genruntime.ClonePointerToString(source.Collation) + + // Conditions + database.Conditions = genruntime.CloneSliceOfCondition(source.Conditions) + + // Id + database.Id = genruntime.ClonePointerToString(source.Id) + + // Name + database.Name = genruntime.ClonePointerToString(source.Name) + + // SystemData + if source.SystemData != nil { + var systemDatum SystemData_STATUS + err := systemDatum.AssignProperties_From_SystemData_STATUS(source.SystemData) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_SystemData_STATUS() to populate field SystemData") + } + database.SystemData = &systemDatum + } else { + database.SystemData = nil + } + + // Type + database.Type = genruntime.ClonePointerToString(source.Type) + + // Update the property bag + if len(propertyBag) > 0 { + database.PropertyBag = propertyBag + } else { + database.PropertyBag = nil + } + + // Invoke the augmentConversionForFlexibleServers_Database_STATUS interface (if implemented) to customize the conversion + var databaseAsAny any = database + if augmentedDatabase, ok := databaseAsAny.(augmentConversionForFlexibleServers_Database_STATUS); ok { + err := augmentedDatabase.AssignPropertiesFrom(source) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesFrom() for conversion") + } + } + + // No error + return nil +} + +// AssignProperties_To_FlexibleServers_Database_STATUS populates the provided destination FlexibleServers_Database_STATUS from our FlexibleServers_Database_STATUS +func (database *FlexibleServers_Database_STATUS) AssignProperties_To_FlexibleServers_Database_STATUS(destination *v20221201s.FlexibleServers_Database_STATUS) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(database.PropertyBag) + + // Charset + destination.Charset = genruntime.ClonePointerToString(database.Charset) + + // Collation + destination.Collation = genruntime.ClonePointerToString(database.Collation) + + // Conditions + destination.Conditions = genruntime.CloneSliceOfCondition(database.Conditions) + + // Id + destination.Id = genruntime.ClonePointerToString(database.Id) + + // Name + destination.Name = genruntime.ClonePointerToString(database.Name) + + // SystemData + if database.SystemData != nil { + var systemDatum v20221201s.SystemData_STATUS + err := database.SystemData.AssignProperties_To_SystemData_STATUS(&systemDatum) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_SystemData_STATUS() to populate field SystemData") + } + destination.SystemData = &systemDatum + } else { + destination.SystemData = nil + } + + // Type + destination.Type = genruntime.ClonePointerToString(database.Type) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // Invoke the augmentConversionForFlexibleServers_Database_STATUS interface (if implemented) to customize the conversion + var databaseAsAny any = database + if augmentedDatabase, ok := databaseAsAny.(augmentConversionForFlexibleServers_Database_STATUS); ok { + err := augmentedDatabase.AssignPropertiesTo(destination) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesTo() for conversion") + } + } + + // No error + return nil +} + +type augmentConversionForFlexibleServers_Database_Spec interface { + AssignPropertiesFrom(src *v20221201s.FlexibleServers_Database_Spec) error + AssignPropertiesTo(dst *v20221201s.FlexibleServers_Database_Spec) error +} + +type augmentConversionForFlexibleServers_Database_STATUS interface { + AssignPropertiesFrom(src *v20221201s.FlexibleServers_Database_STATUS) error + AssignPropertiesTo(dst *v20221201s.FlexibleServers_Database_STATUS) error +} + +func init() { + SchemeBuilder.Register(&FlexibleServersDatabase{}, &FlexibleServersDatabaseList{}) +} diff --git a/v2/api/dbforpostgresql/v1api20230601preview/storage/flexible_servers_database_types_gen_test.go b/v2/api/dbforpostgresql/v1api20230601preview/storage/flexible_servers_database_types_gen_test.go new file mode 100644 index 00000000000..9476afae446 --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/storage/flexible_servers_database_types_gen_test.go @@ -0,0 +1,393 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package storage + +import ( + "encoding/json" + v20221201s "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20221201/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_FlexibleServersDatabase_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 FlexibleServersDatabase to hub returns original", + prop.ForAll(RunResourceConversionTestForFlexibleServersDatabase, FlexibleServersDatabaseGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunResourceConversionTestForFlexibleServersDatabase tests if a specific instance of FlexibleServersDatabase round trips to the hub storage version and back losslessly +func RunResourceConversionTestForFlexibleServersDatabase(subject FlexibleServersDatabase) string { + // Copy subject to make sure conversion doesn't modify it + copied := subject.DeepCopy() + + // Convert to our hub version + var hub v20221201s.FlexibleServersDatabase + err := copied.ConvertTo(&hub) + if err != nil { + return err.Error() + } + + // Convert from our hub version + var actual FlexibleServersDatabase + 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_FlexibleServersDatabase_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from FlexibleServersDatabase to FlexibleServersDatabase via AssignProperties_To_FlexibleServersDatabase & AssignProperties_From_FlexibleServersDatabase returns original", + prop.ForAll(RunPropertyAssignmentTestForFlexibleServersDatabase, FlexibleServersDatabaseGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForFlexibleServersDatabase tests if a specific instance of FlexibleServersDatabase can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForFlexibleServersDatabase(subject FlexibleServersDatabase) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20221201s.FlexibleServersDatabase + err := copied.AssignProperties_To_FlexibleServersDatabase(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual FlexibleServersDatabase + err = actual.AssignProperties_From_FlexibleServersDatabase(&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_FlexibleServersDatabase_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 FlexibleServersDatabase via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServersDatabase, FlexibleServersDatabaseGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServersDatabase runs a test to see if a specific instance of FlexibleServersDatabase round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServersDatabase(subject FlexibleServersDatabase) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServersDatabase + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of FlexibleServersDatabase instances for property testing - lazily instantiated by +// FlexibleServersDatabaseGenerator() +var flexibleServersDatabaseGenerator gopter.Gen + +// FlexibleServersDatabaseGenerator returns a generator of FlexibleServersDatabase instances for property testing. +func FlexibleServersDatabaseGenerator() gopter.Gen { + if flexibleServersDatabaseGenerator != nil { + return flexibleServersDatabaseGenerator + } + + generators := make(map[string]gopter.Gen) + AddRelatedPropertyGeneratorsForFlexibleServersDatabase(generators) + flexibleServersDatabaseGenerator = gen.Struct(reflect.TypeOf(FlexibleServersDatabase{}), generators) + + return flexibleServersDatabaseGenerator +} + +// AddRelatedPropertyGeneratorsForFlexibleServersDatabase is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForFlexibleServersDatabase(gens map[string]gopter.Gen) { + gens["Spec"] = FlexibleServers_Database_SpecGenerator() + gens["Status"] = FlexibleServers_Database_STATUSGenerator() +} + +func Test_FlexibleServers_Database_Spec_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from FlexibleServers_Database_Spec to FlexibleServers_Database_Spec via AssignProperties_To_FlexibleServers_Database_Spec & AssignProperties_From_FlexibleServers_Database_Spec returns original", + prop.ForAll(RunPropertyAssignmentTestForFlexibleServers_Database_Spec, FlexibleServers_Database_SpecGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForFlexibleServers_Database_Spec tests if a specific instance of FlexibleServers_Database_Spec can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForFlexibleServers_Database_Spec(subject FlexibleServers_Database_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 v20221201s.FlexibleServers_Database_Spec + err := copied.AssignProperties_To_FlexibleServers_Database_Spec(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual FlexibleServers_Database_Spec + err = actual.AssignProperties_From_FlexibleServers_Database_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_FlexibleServers_Database_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 FlexibleServers_Database_Spec via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServers_Database_Spec, FlexibleServers_Database_SpecGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServers_Database_Spec runs a test to see if a specific instance of FlexibleServers_Database_Spec round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServers_Database_Spec(subject FlexibleServers_Database_Spec) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServers_Database_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 FlexibleServers_Database_Spec instances for property testing - lazily instantiated by +// FlexibleServers_Database_SpecGenerator() +var flexibleServers_Database_SpecGenerator gopter.Gen + +// FlexibleServers_Database_SpecGenerator returns a generator of FlexibleServers_Database_Spec instances for property testing. +func FlexibleServers_Database_SpecGenerator() gopter.Gen { + if flexibleServers_Database_SpecGenerator != nil { + return flexibleServers_Database_SpecGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServers_Database_Spec(generators) + flexibleServers_Database_SpecGenerator = gen.Struct(reflect.TypeOf(FlexibleServers_Database_Spec{}), generators) + + return flexibleServers_Database_SpecGenerator +} + +// AddIndependentPropertyGeneratorsForFlexibleServers_Database_Spec is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForFlexibleServers_Database_Spec(gens map[string]gopter.Gen) { + gens["AzureName"] = gen.AlphaString() + gens["Charset"] = gen.PtrOf(gen.AlphaString()) + gens["Collation"] = gen.PtrOf(gen.AlphaString()) + gens["OriginalVersion"] = gen.AlphaString() +} + +func Test_FlexibleServers_Database_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from FlexibleServers_Database_STATUS to FlexibleServers_Database_STATUS via AssignProperties_To_FlexibleServers_Database_STATUS & AssignProperties_From_FlexibleServers_Database_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForFlexibleServers_Database_STATUS, FlexibleServers_Database_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForFlexibleServers_Database_STATUS tests if a specific instance of FlexibleServers_Database_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForFlexibleServers_Database_STATUS(subject FlexibleServers_Database_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 v20221201s.FlexibleServers_Database_STATUS + err := copied.AssignProperties_To_FlexibleServers_Database_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual FlexibleServers_Database_STATUS + err = actual.AssignProperties_From_FlexibleServers_Database_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_FlexibleServers_Database_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of FlexibleServers_Database_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServers_Database_STATUS, FlexibleServers_Database_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServers_Database_STATUS runs a test to see if a specific instance of FlexibleServers_Database_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServers_Database_STATUS(subject FlexibleServers_Database_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServers_Database_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of FlexibleServers_Database_STATUS instances for property testing - lazily instantiated by +// FlexibleServers_Database_STATUSGenerator() +var flexibleServers_Database_STATUSGenerator gopter.Gen + +// FlexibleServers_Database_STATUSGenerator returns a generator of FlexibleServers_Database_STATUS instances for property testing. +// We first initialize flexibleServers_Database_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 FlexibleServers_Database_STATUSGenerator() gopter.Gen { + if flexibleServers_Database_STATUSGenerator != nil { + return flexibleServers_Database_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServers_Database_STATUS(generators) + flexibleServers_Database_STATUSGenerator = gen.Struct(reflect.TypeOf(FlexibleServers_Database_STATUS{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServers_Database_STATUS(generators) + AddRelatedPropertyGeneratorsForFlexibleServers_Database_STATUS(generators) + flexibleServers_Database_STATUSGenerator = gen.Struct(reflect.TypeOf(FlexibleServers_Database_STATUS{}), generators) + + return flexibleServers_Database_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForFlexibleServers_Database_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForFlexibleServers_Database_STATUS(gens map[string]gopter.Gen) { + gens["Charset"] = gen.PtrOf(gen.AlphaString()) + gens["Collation"] = gen.PtrOf(gen.AlphaString()) + gens["Id"] = gen.PtrOf(gen.AlphaString()) + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["Type"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForFlexibleServers_Database_STATUS is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForFlexibleServers_Database_STATUS(gens map[string]gopter.Gen) { + gens["SystemData"] = gen.PtrOf(SystemData_STATUSGenerator()) +} diff --git a/v2/api/dbforpostgresql/v1api20230601preview/storage/flexible_servers_firewall_rule_types_gen.go b/v2/api/dbforpostgresql/v1api20230601preview/storage/flexible_servers_firewall_rule_types_gen.go new file mode 100644 index 00000000000..9575cf25e21 --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/storage/flexible_servers_firewall_rule_types_gen.go @@ -0,0 +1,575 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package storage + +import ( + "fmt" + v20221201s "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20221201/storage" + "github.com/Azure/azure-service-operator/v2/pkg/genruntime" + "github.com/Azure/azure-service-operator/v2/pkg/genruntime/conditions" + "github.com/pkg/errors" + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/runtime/schema" + "sigs.k8s.io/controller-runtime/pkg/conversion" +) + +// +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" +// Storage version of v1api20230601preview.FlexibleServersFirewallRule +// Generator information: +// - Generated from: /postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2023-06-01-preview/FirewallRules.json +// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/flexibleServers/{serverName}/firewallRules/{firewallRuleName} +type FlexibleServersFirewallRule struct { + metav1.TypeMeta `json:",inline"` + metav1.ObjectMeta `json:"metadata,omitempty"` + Spec FlexibleServers_FirewallRule_Spec `json:"spec,omitempty"` + Status FlexibleServers_FirewallRule_STATUS `json:"status,omitempty"` +} + +var _ conditions.Conditioner = &FlexibleServersFirewallRule{} + +// GetConditions returns the conditions of the resource +func (rule *FlexibleServersFirewallRule) GetConditions() conditions.Conditions { + return rule.Status.Conditions +} + +// SetConditions sets the conditions on the resource status +func (rule *FlexibleServersFirewallRule) SetConditions(conditions conditions.Conditions) { + rule.Status.Conditions = conditions +} + +var _ conversion.Convertible = &FlexibleServersFirewallRule{} + +// ConvertFrom populates our FlexibleServersFirewallRule from the provided hub FlexibleServersFirewallRule +func (rule *FlexibleServersFirewallRule) ConvertFrom(hub conversion.Hub) error { + source, ok := hub.(*v20221201s.FlexibleServersFirewallRule) + if !ok { + return fmt.Errorf("expected dbforpostgresql/v1api20221201/storage/FlexibleServersFirewallRule but received %T instead", hub) + } + + return rule.AssignProperties_From_FlexibleServersFirewallRule(source) +} + +// ConvertTo populates the provided hub FlexibleServersFirewallRule from our FlexibleServersFirewallRule +func (rule *FlexibleServersFirewallRule) ConvertTo(hub conversion.Hub) error { + destination, ok := hub.(*v20221201s.FlexibleServersFirewallRule) + if !ok { + return fmt.Errorf("expected dbforpostgresql/v1api20221201/storage/FlexibleServersFirewallRule but received %T instead", hub) + } + + return rule.AssignProperties_To_FlexibleServersFirewallRule(destination) +} + +var _ genruntime.KubernetesResource = &FlexibleServersFirewallRule{} + +// AzureName returns the Azure name of the resource +func (rule *FlexibleServersFirewallRule) AzureName() string { + return rule.Spec.AzureName +} + +// GetAPIVersion returns the ARM API version of the resource. This is always "2023-06-01-preview" +func (rule FlexibleServersFirewallRule) GetAPIVersion() string { + return string(APIVersion_Value) +} + +// GetResourceScope returns the scope of the resource +func (rule *FlexibleServersFirewallRule) GetResourceScope() genruntime.ResourceScope { + return genruntime.ResourceScopeResourceGroup +} + +// GetSpec returns the specification of this resource +func (rule *FlexibleServersFirewallRule) GetSpec() genruntime.ConvertibleSpec { + return &rule.Spec +} + +// GetStatus returns the status of this resource +func (rule *FlexibleServersFirewallRule) GetStatus() genruntime.ConvertibleStatus { + return &rule.Status +} + +// GetSupportedOperations returns the operations supported by the resource +func (rule *FlexibleServersFirewallRule) GetSupportedOperations() []genruntime.ResourceOperation { + return []genruntime.ResourceOperation{ + genruntime.ResourceOperationDelete, + genruntime.ResourceOperationGet, + genruntime.ResourceOperationPut, + } +} + +// GetType returns the ARM Type of the resource. This is always "Microsoft.DBforPostgreSQL/flexibleServers/firewallRules" +func (rule *FlexibleServersFirewallRule) GetType() string { + return "Microsoft.DBforPostgreSQL/flexibleServers/firewallRules" +} + +// NewEmptyStatus returns a new empty (blank) status +func (rule *FlexibleServersFirewallRule) NewEmptyStatus() genruntime.ConvertibleStatus { + return &FlexibleServers_FirewallRule_STATUS{} +} + +// Owner returns the ResourceReference of the owner +func (rule *FlexibleServersFirewallRule) Owner() *genruntime.ResourceReference { + group, kind := genruntime.LookupOwnerGroupKind(rule.Spec) + return rule.Spec.Owner.AsResourceReference(group, kind) +} + +// SetStatus sets the status of this resource +func (rule *FlexibleServersFirewallRule) SetStatus(status genruntime.ConvertibleStatus) error { + // If we have exactly the right type of status, assign it + if st, ok := status.(*FlexibleServers_FirewallRule_STATUS); ok { + rule.Status = *st + return nil + } + + // Convert status to required version + var st FlexibleServers_FirewallRule_STATUS + err := status.ConvertStatusTo(&st) + if err != nil { + return errors.Wrap(err, "failed to convert status") + } + + rule.Status = st + return nil +} + +// AssignProperties_From_FlexibleServersFirewallRule populates our FlexibleServersFirewallRule from the provided source FlexibleServersFirewallRule +func (rule *FlexibleServersFirewallRule) AssignProperties_From_FlexibleServersFirewallRule(source *v20221201s.FlexibleServersFirewallRule) error { + + // ObjectMeta + rule.ObjectMeta = *source.ObjectMeta.DeepCopy() + + // Spec + var spec FlexibleServers_FirewallRule_Spec + err := spec.AssignProperties_From_FlexibleServers_FirewallRule_Spec(&source.Spec) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_FlexibleServers_FirewallRule_Spec() to populate field Spec") + } + rule.Spec = spec + + // Status + var status FlexibleServers_FirewallRule_STATUS + err = status.AssignProperties_From_FlexibleServers_FirewallRule_STATUS(&source.Status) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_FlexibleServers_FirewallRule_STATUS() to populate field Status") + } + rule.Status = status + + // Invoke the augmentConversionForFlexibleServersFirewallRule interface (if implemented) to customize the conversion + var ruleAsAny any = rule + if augmentedRule, ok := ruleAsAny.(augmentConversionForFlexibleServersFirewallRule); ok { + err := augmentedRule.AssignPropertiesFrom(source) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesFrom() for conversion") + } + } + + // No error + return nil +} + +// AssignProperties_To_FlexibleServersFirewallRule populates the provided destination FlexibleServersFirewallRule from our FlexibleServersFirewallRule +func (rule *FlexibleServersFirewallRule) AssignProperties_To_FlexibleServersFirewallRule(destination *v20221201s.FlexibleServersFirewallRule) error { + + // ObjectMeta + destination.ObjectMeta = *rule.ObjectMeta.DeepCopy() + + // Spec + var spec v20221201s.FlexibleServers_FirewallRule_Spec + err := rule.Spec.AssignProperties_To_FlexibleServers_FirewallRule_Spec(&spec) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_FlexibleServers_FirewallRule_Spec() to populate field Spec") + } + destination.Spec = spec + + // Status + var status v20221201s.FlexibleServers_FirewallRule_STATUS + err = rule.Status.AssignProperties_To_FlexibleServers_FirewallRule_STATUS(&status) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_FlexibleServers_FirewallRule_STATUS() to populate field Status") + } + destination.Status = status + + // Invoke the augmentConversionForFlexibleServersFirewallRule interface (if implemented) to customize the conversion + var ruleAsAny any = rule + if augmentedRule, ok := ruleAsAny.(augmentConversionForFlexibleServersFirewallRule); ok { + err := augmentedRule.AssignPropertiesTo(destination) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesTo() for conversion") + } + } + + // No error + return nil +} + +// OriginalGVK returns a GroupValueKind for the original API version used to create the resource +func (rule *FlexibleServersFirewallRule) OriginalGVK() *schema.GroupVersionKind { + return &schema.GroupVersionKind{ + Group: GroupVersion.Group, + Version: rule.Spec.OriginalVersion, + Kind: "FlexibleServersFirewallRule", + } +} + +// +kubebuilder:object:root=true +// Storage version of v1api20230601preview.FlexibleServersFirewallRule +// Generator information: +// - Generated from: /postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2023-06-01-preview/FirewallRules.json +// - ARM URI: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/flexibleServers/{serverName}/firewallRules/{firewallRuleName} +type FlexibleServersFirewallRuleList struct { + metav1.TypeMeta `json:",inline"` + metav1.ListMeta `json:"metadata,omitempty"` + Items []FlexibleServersFirewallRule `json:"items"` +} + +type augmentConversionForFlexibleServersFirewallRule interface { + AssignPropertiesFrom(src *v20221201s.FlexibleServersFirewallRule) error + AssignPropertiesTo(dst *v20221201s.FlexibleServersFirewallRule) error +} + +// Storage version of v1api20230601preview.FlexibleServers_FirewallRule_Spec +type FlexibleServers_FirewallRule_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"` + EndIpAddress *string `json:"endIpAddress,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 dbforpostgresql.azure.com/FlexibleServer resource + Owner *genruntime.KnownResourceReference `group:"dbforpostgresql.azure.com" json:"owner,omitempty" kind:"FlexibleServer"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + StartIpAddress *string `json:"startIpAddress,omitempty"` +} + +var _ genruntime.ConvertibleSpec = &FlexibleServers_FirewallRule_Spec{} + +// ConvertSpecFrom populates our FlexibleServers_FirewallRule_Spec from the provided source +func (rule *FlexibleServers_FirewallRule_Spec) ConvertSpecFrom(source genruntime.ConvertibleSpec) error { + src, ok := source.(*v20221201s.FlexibleServers_FirewallRule_Spec) + if ok { + // Populate our instance from source + return rule.AssignProperties_From_FlexibleServers_FirewallRule_Spec(src) + } + + // Convert to an intermediate form + src = &v20221201s.FlexibleServers_FirewallRule_Spec{} + err := src.ConvertSpecFrom(source) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertSpecFrom()") + } + + // Update our instance from src + err = rule.AssignProperties_From_FlexibleServers_FirewallRule_Spec(src) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertSpecFrom()") + } + + return nil +} + +// ConvertSpecTo populates the provided destination from our FlexibleServers_FirewallRule_Spec +func (rule *FlexibleServers_FirewallRule_Spec) ConvertSpecTo(destination genruntime.ConvertibleSpec) error { + dst, ok := destination.(*v20221201s.FlexibleServers_FirewallRule_Spec) + if ok { + // Populate destination from our instance + return rule.AssignProperties_To_FlexibleServers_FirewallRule_Spec(dst) + } + + // Convert to an intermediate form + dst = &v20221201s.FlexibleServers_FirewallRule_Spec{} + err := rule.AssignProperties_To_FlexibleServers_FirewallRule_Spec(dst) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertSpecTo()") + } + + // Update dst from our instance + err = dst.ConvertSpecTo(destination) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertSpecTo()") + } + + return nil +} + +// AssignProperties_From_FlexibleServers_FirewallRule_Spec populates our FlexibleServers_FirewallRule_Spec from the provided source FlexibleServers_FirewallRule_Spec +func (rule *FlexibleServers_FirewallRule_Spec) AssignProperties_From_FlexibleServers_FirewallRule_Spec(source *v20221201s.FlexibleServers_FirewallRule_Spec) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(source.PropertyBag) + + // AzureName + rule.AzureName = source.AzureName + + // EndIpAddress + rule.EndIpAddress = genruntime.ClonePointerToString(source.EndIpAddress) + + // OriginalVersion + rule.OriginalVersion = source.OriginalVersion + + // Owner + if source.Owner != nil { + owner := source.Owner.Copy() + rule.Owner = &owner + } else { + rule.Owner = nil + } + + // StartIpAddress + rule.StartIpAddress = genruntime.ClonePointerToString(source.StartIpAddress) + + // Update the property bag + if len(propertyBag) > 0 { + rule.PropertyBag = propertyBag + } else { + rule.PropertyBag = nil + } + + // Invoke the augmentConversionForFlexibleServers_FirewallRule_Spec interface (if implemented) to customize the conversion + var ruleAsAny any = rule + if augmentedRule, ok := ruleAsAny.(augmentConversionForFlexibleServers_FirewallRule_Spec); ok { + err := augmentedRule.AssignPropertiesFrom(source) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesFrom() for conversion") + } + } + + // No error + return nil +} + +// AssignProperties_To_FlexibleServers_FirewallRule_Spec populates the provided destination FlexibleServers_FirewallRule_Spec from our FlexibleServers_FirewallRule_Spec +func (rule *FlexibleServers_FirewallRule_Spec) AssignProperties_To_FlexibleServers_FirewallRule_Spec(destination *v20221201s.FlexibleServers_FirewallRule_Spec) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(rule.PropertyBag) + + // AzureName + destination.AzureName = rule.AzureName + + // EndIpAddress + destination.EndIpAddress = genruntime.ClonePointerToString(rule.EndIpAddress) + + // OriginalVersion + destination.OriginalVersion = rule.OriginalVersion + + // Owner + if rule.Owner != nil { + owner := rule.Owner.Copy() + destination.Owner = &owner + } else { + destination.Owner = nil + } + + // StartIpAddress + destination.StartIpAddress = genruntime.ClonePointerToString(rule.StartIpAddress) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // Invoke the augmentConversionForFlexibleServers_FirewallRule_Spec interface (if implemented) to customize the conversion + var ruleAsAny any = rule + if augmentedRule, ok := ruleAsAny.(augmentConversionForFlexibleServers_FirewallRule_Spec); ok { + err := augmentedRule.AssignPropertiesTo(destination) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesTo() for conversion") + } + } + + // No error + return nil +} + +// Storage version of v1api20230601preview.FlexibleServers_FirewallRule_STATUS +type FlexibleServers_FirewallRule_STATUS struct { + Conditions []conditions.Condition `json:"conditions,omitempty"` + EndIpAddress *string `json:"endIpAddress,omitempty"` + Id *string `json:"id,omitempty"` + Name *string `json:"name,omitempty"` + PropertyBag genruntime.PropertyBag `json:"$propertyBag,omitempty"` + StartIpAddress *string `json:"startIpAddress,omitempty"` + SystemData *SystemData_STATUS `json:"systemData,omitempty"` + Type *string `json:"type,omitempty"` +} + +var _ genruntime.ConvertibleStatus = &FlexibleServers_FirewallRule_STATUS{} + +// ConvertStatusFrom populates our FlexibleServers_FirewallRule_STATUS from the provided source +func (rule *FlexibleServers_FirewallRule_STATUS) ConvertStatusFrom(source genruntime.ConvertibleStatus) error { + src, ok := source.(*v20221201s.FlexibleServers_FirewallRule_STATUS) + if ok { + // Populate our instance from source + return rule.AssignProperties_From_FlexibleServers_FirewallRule_STATUS(src) + } + + // Convert to an intermediate form + src = &v20221201s.FlexibleServers_FirewallRule_STATUS{} + err := src.ConvertStatusFrom(source) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertStatusFrom()") + } + + // Update our instance from src + err = rule.AssignProperties_From_FlexibleServers_FirewallRule_STATUS(src) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertStatusFrom()") + } + + return nil +} + +// ConvertStatusTo populates the provided destination from our FlexibleServers_FirewallRule_STATUS +func (rule *FlexibleServers_FirewallRule_STATUS) ConvertStatusTo(destination genruntime.ConvertibleStatus) error { + dst, ok := destination.(*v20221201s.FlexibleServers_FirewallRule_STATUS) + if ok { + // Populate destination from our instance + return rule.AssignProperties_To_FlexibleServers_FirewallRule_STATUS(dst) + } + + // Convert to an intermediate form + dst = &v20221201s.FlexibleServers_FirewallRule_STATUS{} + err := rule.AssignProperties_To_FlexibleServers_FirewallRule_STATUS(dst) + if err != nil { + return errors.Wrap(err, "initial step of conversion in ConvertStatusTo()") + } + + // Update dst from our instance + err = dst.ConvertStatusTo(destination) + if err != nil { + return errors.Wrap(err, "final step of conversion in ConvertStatusTo()") + } + + return nil +} + +// AssignProperties_From_FlexibleServers_FirewallRule_STATUS populates our FlexibleServers_FirewallRule_STATUS from the provided source FlexibleServers_FirewallRule_STATUS +func (rule *FlexibleServers_FirewallRule_STATUS) AssignProperties_From_FlexibleServers_FirewallRule_STATUS(source *v20221201s.FlexibleServers_FirewallRule_STATUS) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(source.PropertyBag) + + // Conditions + rule.Conditions = genruntime.CloneSliceOfCondition(source.Conditions) + + // EndIpAddress + rule.EndIpAddress = genruntime.ClonePointerToString(source.EndIpAddress) + + // Id + rule.Id = genruntime.ClonePointerToString(source.Id) + + // Name + rule.Name = genruntime.ClonePointerToString(source.Name) + + // StartIpAddress + rule.StartIpAddress = genruntime.ClonePointerToString(source.StartIpAddress) + + // SystemData + if source.SystemData != nil { + var systemDatum SystemData_STATUS + err := systemDatum.AssignProperties_From_SystemData_STATUS(source.SystemData) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_From_SystemData_STATUS() to populate field SystemData") + } + rule.SystemData = &systemDatum + } else { + rule.SystemData = nil + } + + // Type + rule.Type = genruntime.ClonePointerToString(source.Type) + + // Update the property bag + if len(propertyBag) > 0 { + rule.PropertyBag = propertyBag + } else { + rule.PropertyBag = nil + } + + // Invoke the augmentConversionForFlexibleServers_FirewallRule_STATUS interface (if implemented) to customize the conversion + var ruleAsAny any = rule + if augmentedRule, ok := ruleAsAny.(augmentConversionForFlexibleServers_FirewallRule_STATUS); ok { + err := augmentedRule.AssignPropertiesFrom(source) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesFrom() for conversion") + } + } + + // No error + return nil +} + +// AssignProperties_To_FlexibleServers_FirewallRule_STATUS populates the provided destination FlexibleServers_FirewallRule_STATUS from our FlexibleServers_FirewallRule_STATUS +func (rule *FlexibleServers_FirewallRule_STATUS) AssignProperties_To_FlexibleServers_FirewallRule_STATUS(destination *v20221201s.FlexibleServers_FirewallRule_STATUS) error { + // Clone the existing property bag + propertyBag := genruntime.NewPropertyBag(rule.PropertyBag) + + // Conditions + destination.Conditions = genruntime.CloneSliceOfCondition(rule.Conditions) + + // EndIpAddress + destination.EndIpAddress = genruntime.ClonePointerToString(rule.EndIpAddress) + + // Id + destination.Id = genruntime.ClonePointerToString(rule.Id) + + // Name + destination.Name = genruntime.ClonePointerToString(rule.Name) + + // StartIpAddress + destination.StartIpAddress = genruntime.ClonePointerToString(rule.StartIpAddress) + + // SystemData + if rule.SystemData != nil { + var systemDatum v20221201s.SystemData_STATUS + err := rule.SystemData.AssignProperties_To_SystemData_STATUS(&systemDatum) + if err != nil { + return errors.Wrap(err, "calling AssignProperties_To_SystemData_STATUS() to populate field SystemData") + } + destination.SystemData = &systemDatum + } else { + destination.SystemData = nil + } + + // Type + destination.Type = genruntime.ClonePointerToString(rule.Type) + + // Update the property bag + if len(propertyBag) > 0 { + destination.PropertyBag = propertyBag + } else { + destination.PropertyBag = nil + } + + // Invoke the augmentConversionForFlexibleServers_FirewallRule_STATUS interface (if implemented) to customize the conversion + var ruleAsAny any = rule + if augmentedRule, ok := ruleAsAny.(augmentConversionForFlexibleServers_FirewallRule_STATUS); ok { + err := augmentedRule.AssignPropertiesTo(destination) + if err != nil { + return errors.Wrap(err, "calling augmented AssignPropertiesTo() for conversion") + } + } + + // No error + return nil +} + +type augmentConversionForFlexibleServers_FirewallRule_Spec interface { + AssignPropertiesFrom(src *v20221201s.FlexibleServers_FirewallRule_Spec) error + AssignPropertiesTo(dst *v20221201s.FlexibleServers_FirewallRule_Spec) error +} + +type augmentConversionForFlexibleServers_FirewallRule_STATUS interface { + AssignPropertiesFrom(src *v20221201s.FlexibleServers_FirewallRule_STATUS) error + AssignPropertiesTo(dst *v20221201s.FlexibleServers_FirewallRule_STATUS) error +} + +func init() { + SchemeBuilder.Register(&FlexibleServersFirewallRule{}, &FlexibleServersFirewallRuleList{}) +} diff --git a/v2/api/dbforpostgresql/v1api20230601preview/storage/flexible_servers_firewall_rule_types_gen_test.go b/v2/api/dbforpostgresql/v1api20230601preview/storage/flexible_servers_firewall_rule_types_gen_test.go new file mode 100644 index 00000000000..c804afa0de0 --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/storage/flexible_servers_firewall_rule_types_gen_test.go @@ -0,0 +1,393 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +package storage + +import ( + "encoding/json" + v20221201s "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20221201/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_FlexibleServersFirewallRule_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 FlexibleServersFirewallRule to hub returns original", + prop.ForAll(RunResourceConversionTestForFlexibleServersFirewallRule, FlexibleServersFirewallRuleGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunResourceConversionTestForFlexibleServersFirewallRule tests if a specific instance of FlexibleServersFirewallRule round trips to the hub storage version and back losslessly +func RunResourceConversionTestForFlexibleServersFirewallRule(subject FlexibleServersFirewallRule) string { + // Copy subject to make sure conversion doesn't modify it + copied := subject.DeepCopy() + + // Convert to our hub version + var hub v20221201s.FlexibleServersFirewallRule + err := copied.ConvertTo(&hub) + if err != nil { + return err.Error() + } + + // Convert from our hub version + var actual FlexibleServersFirewallRule + 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_FlexibleServersFirewallRule_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from FlexibleServersFirewallRule to FlexibleServersFirewallRule via AssignProperties_To_FlexibleServersFirewallRule & AssignProperties_From_FlexibleServersFirewallRule returns original", + prop.ForAll(RunPropertyAssignmentTestForFlexibleServersFirewallRule, FlexibleServersFirewallRuleGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForFlexibleServersFirewallRule tests if a specific instance of FlexibleServersFirewallRule can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForFlexibleServersFirewallRule(subject FlexibleServersFirewallRule) string { + // Copy subject to make sure assignment doesn't modify it + copied := subject.DeepCopy() + + // Use AssignPropertiesTo() for the first stage of conversion + var other v20221201s.FlexibleServersFirewallRule + err := copied.AssignProperties_To_FlexibleServersFirewallRule(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual FlexibleServersFirewallRule + err = actual.AssignProperties_From_FlexibleServersFirewallRule(&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_FlexibleServersFirewallRule_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 FlexibleServersFirewallRule via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServersFirewallRule, FlexibleServersFirewallRuleGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServersFirewallRule runs a test to see if a specific instance of FlexibleServersFirewallRule round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServersFirewallRule(subject FlexibleServersFirewallRule) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServersFirewallRule + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of FlexibleServersFirewallRule instances for property testing - lazily instantiated by +// FlexibleServersFirewallRuleGenerator() +var flexibleServersFirewallRuleGenerator gopter.Gen + +// FlexibleServersFirewallRuleGenerator returns a generator of FlexibleServersFirewallRule instances for property testing. +func FlexibleServersFirewallRuleGenerator() gopter.Gen { + if flexibleServersFirewallRuleGenerator != nil { + return flexibleServersFirewallRuleGenerator + } + + generators := make(map[string]gopter.Gen) + AddRelatedPropertyGeneratorsForFlexibleServersFirewallRule(generators) + flexibleServersFirewallRuleGenerator = gen.Struct(reflect.TypeOf(FlexibleServersFirewallRule{}), generators) + + return flexibleServersFirewallRuleGenerator +} + +// AddRelatedPropertyGeneratorsForFlexibleServersFirewallRule is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForFlexibleServersFirewallRule(gens map[string]gopter.Gen) { + gens["Spec"] = FlexibleServers_FirewallRule_SpecGenerator() + gens["Status"] = FlexibleServers_FirewallRule_STATUSGenerator() +} + +func Test_FlexibleServers_FirewallRule_Spec_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from FlexibleServers_FirewallRule_Spec to FlexibleServers_FirewallRule_Spec via AssignProperties_To_FlexibleServers_FirewallRule_Spec & AssignProperties_From_FlexibleServers_FirewallRule_Spec returns original", + prop.ForAll(RunPropertyAssignmentTestForFlexibleServers_FirewallRule_Spec, FlexibleServers_FirewallRule_SpecGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForFlexibleServers_FirewallRule_Spec tests if a specific instance of FlexibleServers_FirewallRule_Spec can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForFlexibleServers_FirewallRule_Spec(subject FlexibleServers_FirewallRule_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 v20221201s.FlexibleServers_FirewallRule_Spec + err := copied.AssignProperties_To_FlexibleServers_FirewallRule_Spec(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual FlexibleServers_FirewallRule_Spec + err = actual.AssignProperties_From_FlexibleServers_FirewallRule_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_FlexibleServers_FirewallRule_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 FlexibleServers_FirewallRule_Spec via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServers_FirewallRule_Spec, FlexibleServers_FirewallRule_SpecGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServers_FirewallRule_Spec runs a test to see if a specific instance of FlexibleServers_FirewallRule_Spec round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServers_FirewallRule_Spec(subject FlexibleServers_FirewallRule_Spec) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServers_FirewallRule_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 FlexibleServers_FirewallRule_Spec instances for property testing - lazily instantiated by +// FlexibleServers_FirewallRule_SpecGenerator() +var flexibleServers_FirewallRule_SpecGenerator gopter.Gen + +// FlexibleServers_FirewallRule_SpecGenerator returns a generator of FlexibleServers_FirewallRule_Spec instances for property testing. +func FlexibleServers_FirewallRule_SpecGenerator() gopter.Gen { + if flexibleServers_FirewallRule_SpecGenerator != nil { + return flexibleServers_FirewallRule_SpecGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServers_FirewallRule_Spec(generators) + flexibleServers_FirewallRule_SpecGenerator = gen.Struct(reflect.TypeOf(FlexibleServers_FirewallRule_Spec{}), generators) + + return flexibleServers_FirewallRule_SpecGenerator +} + +// AddIndependentPropertyGeneratorsForFlexibleServers_FirewallRule_Spec is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForFlexibleServers_FirewallRule_Spec(gens map[string]gopter.Gen) { + gens["AzureName"] = gen.AlphaString() + gens["EndIpAddress"] = gen.PtrOf(gen.AlphaString()) + gens["OriginalVersion"] = gen.AlphaString() + gens["StartIpAddress"] = gen.PtrOf(gen.AlphaString()) +} + +func Test_FlexibleServers_FirewallRule_STATUS_WhenPropertiesConverted_RoundTripsWithoutLoss(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MaxSize = 10 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip from FlexibleServers_FirewallRule_STATUS to FlexibleServers_FirewallRule_STATUS via AssignProperties_To_FlexibleServers_FirewallRule_STATUS & AssignProperties_From_FlexibleServers_FirewallRule_STATUS returns original", + prop.ForAll(RunPropertyAssignmentTestForFlexibleServers_FirewallRule_STATUS, FlexibleServers_FirewallRule_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(false, 240, os.Stdout)) +} + +// RunPropertyAssignmentTestForFlexibleServers_FirewallRule_STATUS tests if a specific instance of FlexibleServers_FirewallRule_STATUS can be assigned to storage and back losslessly +func RunPropertyAssignmentTestForFlexibleServers_FirewallRule_STATUS(subject FlexibleServers_FirewallRule_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 v20221201s.FlexibleServers_FirewallRule_STATUS + err := copied.AssignProperties_To_FlexibleServers_FirewallRule_STATUS(&other) + if err != nil { + return err.Error() + } + + // Use AssignPropertiesFrom() to convert back to our original type + var actual FlexibleServers_FirewallRule_STATUS + err = actual.AssignProperties_From_FlexibleServers_FirewallRule_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_FlexibleServers_FirewallRule_STATUS_WhenSerializedToJson_DeserializesAsEqual(t *testing.T) { + t.Parallel() + parameters := gopter.DefaultTestParameters() + parameters.MinSuccessfulTests = 80 + parameters.MaxSize = 3 + properties := gopter.NewProperties(parameters) + properties.Property( + "Round trip of FlexibleServers_FirewallRule_STATUS via JSON returns original", + prop.ForAll(RunJSONSerializationTestForFlexibleServers_FirewallRule_STATUS, FlexibleServers_FirewallRule_STATUSGenerator())) + properties.TestingRun(t, gopter.NewFormatedReporter(true, 240, os.Stdout)) +} + +// RunJSONSerializationTestForFlexibleServers_FirewallRule_STATUS runs a test to see if a specific instance of FlexibleServers_FirewallRule_STATUS round trips to JSON and back losslessly +func RunJSONSerializationTestForFlexibleServers_FirewallRule_STATUS(subject FlexibleServers_FirewallRule_STATUS) string { + // Serialize to JSON + bin, err := json.Marshal(subject) + if err != nil { + return err.Error() + } + + // Deserialize back into memory + var actual FlexibleServers_FirewallRule_STATUS + err = json.Unmarshal(bin, &actual) + if err != nil { + return err.Error() + } + + // Check for outcome + match := cmp.Equal(subject, actual, cmpopts.EquateEmpty()) + if !match { + actualFmt := pretty.Sprint(actual) + subjectFmt := pretty.Sprint(subject) + result := diff.Diff(subjectFmt, actualFmt) + return result + } + + return "" +} + +// Generator of FlexibleServers_FirewallRule_STATUS instances for property testing - lazily instantiated by +// FlexibleServers_FirewallRule_STATUSGenerator() +var flexibleServers_FirewallRule_STATUSGenerator gopter.Gen + +// FlexibleServers_FirewallRule_STATUSGenerator returns a generator of FlexibleServers_FirewallRule_STATUS instances for property testing. +// We first initialize flexibleServers_FirewallRule_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 FlexibleServers_FirewallRule_STATUSGenerator() gopter.Gen { + if flexibleServers_FirewallRule_STATUSGenerator != nil { + return flexibleServers_FirewallRule_STATUSGenerator + } + + generators := make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServers_FirewallRule_STATUS(generators) + flexibleServers_FirewallRule_STATUSGenerator = gen.Struct(reflect.TypeOf(FlexibleServers_FirewallRule_STATUS{}), generators) + + // The above call to gen.Struct() captures the map, so create a new one + generators = make(map[string]gopter.Gen) + AddIndependentPropertyGeneratorsForFlexibleServers_FirewallRule_STATUS(generators) + AddRelatedPropertyGeneratorsForFlexibleServers_FirewallRule_STATUS(generators) + flexibleServers_FirewallRule_STATUSGenerator = gen.Struct(reflect.TypeOf(FlexibleServers_FirewallRule_STATUS{}), generators) + + return flexibleServers_FirewallRule_STATUSGenerator +} + +// AddIndependentPropertyGeneratorsForFlexibleServers_FirewallRule_STATUS is a factory method for creating gopter generators +func AddIndependentPropertyGeneratorsForFlexibleServers_FirewallRule_STATUS(gens map[string]gopter.Gen) { + gens["EndIpAddress"] = gen.PtrOf(gen.AlphaString()) + gens["Id"] = gen.PtrOf(gen.AlphaString()) + gens["Name"] = gen.PtrOf(gen.AlphaString()) + gens["StartIpAddress"] = gen.PtrOf(gen.AlphaString()) + gens["Type"] = gen.PtrOf(gen.AlphaString()) +} + +// AddRelatedPropertyGeneratorsForFlexibleServers_FirewallRule_STATUS is a factory method for creating gopter generators +func AddRelatedPropertyGeneratorsForFlexibleServers_FirewallRule_STATUS(gens map[string]gopter.Gen) { + gens["SystemData"] = gen.PtrOf(SystemData_STATUSGenerator()) +} diff --git a/v2/api/dbforpostgresql/v1api20230601preview/storage/groupversion_info_gen.go b/v2/api/dbforpostgresql/v1api20230601preview/storage/groupversion_info_gen.go new file mode 100644 index 00000000000..f9e56c2b535 --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/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 dbforpostgresql storage API group +// +kubebuilder:object:generate=true +// All object properties are optional by default, this will be overridden when needed: +// +kubebuilder:validation:Optional +// +groupName=dbforpostgresql.azure.com +// +versionName=v1api20230601previewstorage +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: "dbforpostgresql.azure.com", Version: "v1api20230601previewstorage"} + + // 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/dbforpostgresql/v1api20230601preview/storage/structure.txt b/v2/api/dbforpostgresql/v1api20230601preview/storage/structure.txt new file mode 100644 index 00000000000..2162b6deb26 --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/storage/structure.txt @@ -0,0 +1,297 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20230601preview/storage +├── APIVersion: Enum (1 value) +│ └── "2023-06-01-preview" +├── FlexibleServer: Resource +│ ├── Owner: github.com/Azure/azure-service-operator/v2/api/resources/v1apiv20191001.ResourceGroup +│ ├── Spec: Object (25 properties) +│ │ ├── AdministratorLogin: *string +│ │ ├── AdministratorLoginPassword: *genruntime.SecretReference +│ │ ├── AuthConfig: *Object (4 properties) +│ │ │ ├── ActiveDirectoryAuth: *string +│ │ │ ├── PasswordAuth: *string +│ │ │ ├── PropertyBag: genruntime.PropertyBag +│ │ │ └── TenantId: *string +│ │ ├── AvailabilityZone: *string +│ │ ├── AzureName: string +│ │ ├── Backup: *Object (3 properties) +│ │ │ ├── BackupRetentionDays: *int +│ │ │ ├── GeoRedundantBackup: *string +│ │ │ └── PropertyBag: genruntime.PropertyBag +│ │ ├── CreateMode: *string +│ │ ├── DataEncryption: *Object (8 properties) +│ │ │ ├── GeoBackupEncryptionKeyStatus: *string +│ │ │ ├── GeoBackupKeyURI: *string +│ │ │ ├── GeoBackupUserAssignedIdentityReference: *genruntime.ResourceReference +│ │ │ ├── PrimaryEncryptionKeyStatus: *string +│ │ │ ├── PrimaryKeyURI: *string +│ │ │ ├── PrimaryUserAssignedIdentityReference: *genruntime.ResourceReference +│ │ │ ├── PropertyBag: genruntime.PropertyBag +│ │ │ └── Type: *string +│ │ ├── HighAvailability: *Object (3 properties) +│ │ │ ├── Mode: *string +│ │ │ ├── PropertyBag: genruntime.PropertyBag +│ │ │ └── StandbyAvailabilityZone: *string +│ │ ├── Identity: *Object (3 properties) +│ │ │ ├── PropertyBag: genruntime.PropertyBag +│ │ │ ├── Type: *string +│ │ │ └── UserAssignedIdentities: Object (2 properties)[] +│ │ │ ├── PropertyBag: genruntime.PropertyBag +│ │ │ └── Reference: genruntime.ResourceReference +│ │ ├── Location: *string +│ │ ├── MaintenanceWindow: *Object (5 properties) +│ │ │ ├── CustomWindow: *string +│ │ │ ├── DayOfWeek: *int +│ │ │ ├── PropertyBag: genruntime.PropertyBag +│ │ │ ├── StartHour: *int +│ │ │ └── StartMinute: *int +│ │ ├── Network: *Object (4 properties) +│ │ │ ├── DelegatedSubnetResourceReference: *genruntime.ResourceReference +│ │ │ ├── PrivateDnsZoneArmResourceReference: *genruntime.ResourceReference +│ │ │ ├── PropertyBag: genruntime.PropertyBag +│ │ │ └── PublicNetworkAccess: *string +│ │ ├── OperatorSpec: *Object (3 properties) +│ │ │ ├── ConfigMaps: *Object (2 properties) +│ │ │ │ ├── FullyQualifiedDomainName: *genruntime.ConfigMapDestination +│ │ │ │ └── PropertyBag: genruntime.PropertyBag +│ │ │ ├── PropertyBag: genruntime.PropertyBag +│ │ │ └── Secrets: *Object (2 properties) +│ │ │ ├── FullyQualifiedDomainName: *genruntime.SecretDestination +│ │ │ └── PropertyBag: genruntime.PropertyBag +│ │ ├── OriginalVersion: string +│ │ ├── Owner: *genruntime.KnownResourceReference +│ │ ├── PointInTimeUTC: *string +│ │ ├── PropertyBag: genruntime.PropertyBag +│ │ ├── Replica: *Object (4 properties) +│ │ │ ├── PromoteMode: *string +│ │ │ ├── PromoteOption: *string +│ │ │ ├── PropertyBag: genruntime.PropertyBag +│ │ │ └── Role: *string +│ │ ├── ReplicationRole: *string +│ │ ├── Sku: *Object (3 properties) +│ │ │ ├── Name: *string +│ │ │ ├── PropertyBag: genruntime.PropertyBag +│ │ │ └── Tier: *string +│ │ ├── SourceServerResourceReference: *genruntime.ResourceReference +│ │ ├── Storage: *Object (7 properties) +│ │ │ ├── AutoGrow: *string +│ │ │ ├── Iops: *int +│ │ │ ├── PropertyBag: genruntime.PropertyBag +│ │ │ ├── StorageSizeGB: *int +│ │ │ ├── Throughput: *int +│ │ │ ├── Tier: *string +│ │ │ └── Type: *string +│ │ ├── Tags: map[string]string +│ │ └── Version: *string +│ └── Status: Object (30 properties) +│ ├── AdministratorLogin: *string +│ ├── AuthConfig: *Object (4 properties) +│ │ ├── ActiveDirectoryAuth: *string +│ │ ├── PasswordAuth: *string +│ │ ├── PropertyBag: genruntime.PropertyBag +│ │ └── TenantId: *string +│ ├── AvailabilityZone: *string +│ ├── Backup: *Object (4 properties) +│ │ ├── BackupRetentionDays: *int +│ │ ├── EarliestRestoreDate: *string +│ │ ├── GeoRedundantBackup: *string +│ │ └── PropertyBag: genruntime.PropertyBag +│ ├── Conditions: conditions.Condition[] +│ ├── CreateMode: *string +│ ├── DataEncryption: *Object (8 properties) +│ │ ├── GeoBackupEncryptionKeyStatus: *string +│ │ ├── GeoBackupKeyURI: *string +│ │ ├── GeoBackupUserAssignedIdentityId: *string +│ │ ├── PrimaryEncryptionKeyStatus: *string +│ │ ├── PrimaryKeyURI: *string +│ │ ├── PrimaryUserAssignedIdentityId: *string +│ │ ├── PropertyBag: genruntime.PropertyBag +│ │ └── Type: *string +│ ├── FullyQualifiedDomainName: *string +│ ├── HighAvailability: *Object (4 properties) +│ │ ├── Mode: *string +│ │ ├── PropertyBag: genruntime.PropertyBag +│ │ ├── StandbyAvailabilityZone: *string +│ │ └── State: *string +│ ├── Id: *string +│ ├── Identity: *Object (4 properties) +│ │ ├── PropertyBag: genruntime.PropertyBag +│ │ ├── TenantId: *string +│ │ ├── Type: *string +│ │ └── UserAssignedIdentities: map[string]Object (3 properties) +│ │ ├── ClientId: *string +│ │ ├── PrincipalId: *string +│ │ └── PropertyBag: genruntime.PropertyBag +│ ├── Location: *string +│ ├── MaintenanceWindow: *Object (5 properties) +│ │ ├── CustomWindow: *string +│ │ ├── DayOfWeek: *int +│ │ ├── PropertyBag: genruntime.PropertyBag +│ │ ├── StartHour: *int +│ │ └── StartMinute: *int +│ ├── MinorVersion: *string +│ ├── Name: *string +│ ├── Network: *Object (4 properties) +│ │ ├── DelegatedSubnetResourceId: *string +│ │ ├── PrivateDnsZoneArmResourceId: *string +│ │ ├── PropertyBag: genruntime.PropertyBag +│ │ └── PublicNetworkAccess: *string +│ ├── PointInTimeUTC: *string +│ ├── PrivateEndpointConnections: Object (2 properties)[] +│ │ ├── Id: *string +│ │ └── PropertyBag: genruntime.PropertyBag +│ ├── PropertyBag: genruntime.PropertyBag +│ ├── Replica: *Object (6 properties) +│ │ ├── Capacity: *int +│ │ ├── PromoteMode: *string +│ │ ├── PromoteOption: *string +│ │ ├── PropertyBag: genruntime.PropertyBag +│ │ ├── ReplicationState: *string +│ │ └── Role: *string +│ ├── ReplicaCapacity: *int +│ ├── ReplicationRole: *string +│ ├── Sku: *Object (3 properties) +│ │ ├── Name: *string +│ │ ├── PropertyBag: genruntime.PropertyBag +│ │ └── Tier: *string +│ ├── SourceServerResourceId: *string +│ ├── State: *string +│ ├── Storage: *Object (7 properties) +│ │ ├── AutoGrow: *string +│ │ ├── Iops: *int +│ │ ├── PropertyBag: genruntime.PropertyBag +│ │ ├── StorageSizeGB: *int +│ │ ├── Throughput: *int +│ │ ├── Tier: *string +│ │ └── Type: *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 +│ └── Version: *string +├── FlexibleServersConfiguration: Resource +│ ├── Owner: github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20230601preview.FlexibleServer +│ ├── Spec: Object (6 properties) +│ │ ├── AzureName: string +│ │ ├── OriginalVersion: string +│ │ ├── Owner: *genruntime.KnownResourceReference +│ │ ├── PropertyBag: genruntime.PropertyBag +│ │ ├── Source: *string +│ │ └── Value: *string +│ └── Status: Object (17 properties) +│ ├── AllowedValues: *string +│ ├── Conditions: conditions.Condition[] +│ ├── DataType: *string +│ ├── DefaultValue: *string +│ ├── Description: *string +│ ├── DocumentationLink: *string +│ ├── Id: *string +│ ├── IsConfigPendingRestart: *bool +│ ├── IsDynamicConfig: *bool +│ ├── IsReadOnly: *bool +│ ├── Name: *string +│ ├── PropertyBag: genruntime.PropertyBag +│ ├── Source: *string +│ ├── SystemData: *Object (7 properties) +│ │ ├── CreatedAt: *string +│ │ ├── CreatedBy: *string +│ │ ├── CreatedByType: *string +│ │ ├── LastModifiedAt: *string +│ │ ├── LastModifiedBy: *string +│ │ ├── LastModifiedByType: *string +│ │ └── PropertyBag: genruntime.PropertyBag +│ ├── Type: *string +│ ├── Unit: *string +│ └── Value: *string +├── FlexibleServersDatabase: Resource +│ ├── Owner: github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20230601preview.FlexibleServer +│ ├── Spec: Object (6 properties) +│ │ ├── AzureName: string +│ │ ├── Charset: *string +│ │ ├── Collation: *string +│ │ ├── OriginalVersion: string +│ │ ├── Owner: *genruntime.KnownResourceReference +│ │ └── PropertyBag: genruntime.PropertyBag +│ └── Status: Object (8 properties) +│ ├── Charset: *string +│ ├── Collation: *string +│ ├── Conditions: conditions.Condition[] +│ ├── Id: *string +│ ├── Name: *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 +├── FlexibleServersFirewallRule: Resource +│ ├── Owner: github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20230601preview.FlexibleServer +│ ├── Spec: Object (6 properties) +│ │ ├── AzureName: string +│ │ ├── EndIpAddress: *string +│ │ ├── OriginalVersion: string +│ │ ├── Owner: *genruntime.KnownResourceReference +│ │ ├── PropertyBag: genruntime.PropertyBag +│ │ └── StartIpAddress: *string +│ └── Status: Object (8 properties) +│ ├── Conditions: conditions.Condition[] +│ ├── EndIpAddress: *string +│ ├── Id: *string +│ ├── Name: *string +│ ├── PropertyBag: genruntime.PropertyBag +│ ├── StartIpAddress: *string +│ ├── SystemData: *Object (7 properties) +│ │ ├── CreatedAt: *string +│ │ ├── CreatedBy: *string +│ │ ├── CreatedByType: *string +│ │ ├── LastModifiedAt: *string +│ │ ├── LastModifiedBy: *string +│ │ ├── LastModifiedByType: *string +│ │ └── PropertyBag: genruntime.PropertyBag +│ └── Type: *string +├── augmentConversionForAuthConfig: Interface +├── augmentConversionForAuthConfig_STATUS: Interface +├── augmentConversionForBackup: Interface +├── augmentConversionForBackup_STATUS: Interface +├── augmentConversionForDataEncryption: Interface +├── augmentConversionForDataEncryption_STATUS: Interface +├── augmentConversionForFlexibleServer: Interface +├── augmentConversionForFlexibleServerOperatorConfigMaps: Interface +├── augmentConversionForFlexibleServerOperatorSecrets: Interface +├── augmentConversionForFlexibleServerOperatorSpec: Interface +├── augmentConversionForFlexibleServer_STATUS: Interface +├── augmentConversionForFlexibleServer_Spec: Interface +├── augmentConversionForFlexibleServersConfiguration: Interface +├── augmentConversionForFlexibleServersDatabase: Interface +├── augmentConversionForFlexibleServersFirewallRule: Interface +├── augmentConversionForFlexibleServers_Configuration_STATUS: Interface +├── augmentConversionForFlexibleServers_Configuration_Spec: Interface +├── augmentConversionForFlexibleServers_Database_STATUS: Interface +├── augmentConversionForFlexibleServers_Database_Spec: Interface +├── augmentConversionForFlexibleServers_FirewallRule_STATUS: Interface +├── augmentConversionForFlexibleServers_FirewallRule_Spec: Interface +├── augmentConversionForHighAvailability: Interface +├── augmentConversionForHighAvailability_STATUS: Interface +├── augmentConversionForMaintenanceWindow: Interface +├── augmentConversionForMaintenanceWindow_STATUS: Interface +├── augmentConversionForNetwork: Interface +├── augmentConversionForNetwork_STATUS: Interface +├── augmentConversionForSku: Interface +├── augmentConversionForSku_STATUS: Interface +├── augmentConversionForStorage: Interface +├── augmentConversionForStorage_STATUS: Interface +├── augmentConversionForSystemData_STATUS: Interface +├── augmentConversionForUserAssignedIdentity: Interface +├── augmentConversionForUserAssignedIdentityDetails: Interface +├── augmentConversionForUserAssignedIdentity_STATUS: Interface +└── augmentConversionForUserIdentity_STATUS: Interface diff --git a/v2/api/dbforpostgresql/v1api20230601preview/storage/zz_generated.deepcopy.go b/v2/api/dbforpostgresql/v1api20230601preview/storage/zz_generated.deepcopy.go new file mode 100644 index 00000000000..e52c22a2770 --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/storage/zz_generated.deepcopy.go @@ -0,0 +1,1921 @@ +//go:build !ignore_autogenerated + +/* +Copyright (c) Microsoft Corporation. +Licensed under the MIT license. +*/ + +// Code generated by controller-gen. DO NOT EDIT. + +package storage + +import ( + "github.com/Azure/azure-service-operator/v2/pkg/genruntime" + "github.com/Azure/azure-service-operator/v2/pkg/genruntime/conditions" + runtime "k8s.io/apimachinery/pkg/runtime" +) + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthConfig) DeepCopyInto(out *AuthConfig) { + *out = *in + if in.ActiveDirectoryAuth != nil { + in, out := &in.ActiveDirectoryAuth, &out.ActiveDirectoryAuth + *out = new(string) + **out = **in + } + if in.PasswordAuth != nil { + in, out := &in.PasswordAuth, &out.PasswordAuth + *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 + } +} + +// 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 +} + +// 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.ActiveDirectoryAuth != nil { + in, out := &in.ActiveDirectoryAuth, &out.ActiveDirectoryAuth + *out = new(string) + **out = **in + } + if in.PasswordAuth != nil { + in, out := &in.PasswordAuth, &out.PasswordAuth + *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 + } +} + +// 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 *Backup) DeepCopyInto(out *Backup) { + *out = *in + if in.BackupRetentionDays != nil { + in, out := &in.BackupRetentionDays, &out.BackupRetentionDays + *out = new(int) + **out = **in + } + if in.GeoRedundantBackup != nil { + in, out := &in.GeoRedundantBackup, &out.GeoRedundantBackup + *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 Backup. +func (in *Backup) DeepCopy() *Backup { + if in == nil { + return nil + } + out := new(Backup) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Backup_STATUS) DeepCopyInto(out *Backup_STATUS) { + *out = *in + if in.BackupRetentionDays != nil { + in, out := &in.BackupRetentionDays, &out.BackupRetentionDays + *out = new(int) + **out = **in + } + if in.EarliestRestoreDate != nil { + in, out := &in.EarliestRestoreDate, &out.EarliestRestoreDate + *out = new(string) + **out = **in + } + if in.GeoRedundantBackup != nil { + in, out := &in.GeoRedundantBackup, &out.GeoRedundantBackup + *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 Backup_STATUS. +func (in *Backup_STATUS) DeepCopy() *Backup_STATUS { + if in == nil { + return nil + } + out := new(Backup_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 *DataEncryption) DeepCopyInto(out *DataEncryption) { + *out = *in + if in.GeoBackupEncryptionKeyStatus != nil { + in, out := &in.GeoBackupEncryptionKeyStatus, &out.GeoBackupEncryptionKeyStatus + *out = new(string) + **out = **in + } + if in.GeoBackupKeyURI != nil { + in, out := &in.GeoBackupKeyURI, &out.GeoBackupKeyURI + *out = new(string) + **out = **in + } + if in.GeoBackupUserAssignedIdentityReference != nil { + in, out := &in.GeoBackupUserAssignedIdentityReference, &out.GeoBackupUserAssignedIdentityReference + *out = new(genruntime.ResourceReference) + **out = **in + } + if in.PrimaryEncryptionKeyStatus != nil { + in, out := &in.PrimaryEncryptionKeyStatus, &out.PrimaryEncryptionKeyStatus + *out = new(string) + **out = **in + } + if in.PrimaryKeyURI != nil { + in, out := &in.PrimaryKeyURI, &out.PrimaryKeyURI + *out = new(string) + **out = **in + } + if in.PrimaryUserAssignedIdentityReference != nil { + in, out := &in.PrimaryUserAssignedIdentityReference, &out.PrimaryUserAssignedIdentityReference + *out = new(genruntime.ResourceReference) + **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 DataEncryption. +func (in *DataEncryption) DeepCopy() *DataEncryption { + if in == nil { + return nil + } + out := new(DataEncryption) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataEncryption_STATUS) DeepCopyInto(out *DataEncryption_STATUS) { + *out = *in + if in.GeoBackupEncryptionKeyStatus != nil { + in, out := &in.GeoBackupEncryptionKeyStatus, &out.GeoBackupEncryptionKeyStatus + *out = new(string) + **out = **in + } + if in.GeoBackupKeyURI != nil { + in, out := &in.GeoBackupKeyURI, &out.GeoBackupKeyURI + *out = new(string) + **out = **in + } + if in.GeoBackupUserAssignedIdentityId != nil { + in, out := &in.GeoBackupUserAssignedIdentityId, &out.GeoBackupUserAssignedIdentityId + *out = new(string) + **out = **in + } + if in.PrimaryEncryptionKeyStatus != nil { + in, out := &in.PrimaryEncryptionKeyStatus, &out.PrimaryEncryptionKeyStatus + *out = new(string) + **out = **in + } + if in.PrimaryKeyURI != nil { + in, out := &in.PrimaryKeyURI, &out.PrimaryKeyURI + *out = new(string) + **out = **in + } + if in.PrimaryUserAssignedIdentityId != nil { + in, out := &in.PrimaryUserAssignedIdentityId, &out.PrimaryUserAssignedIdentityId + *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 DataEncryption_STATUS. +func (in *DataEncryption_STATUS) DeepCopy() *DataEncryption_STATUS { + if in == nil { + return nil + } + out := new(DataEncryption_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 *FlexibleServer) DeepCopyInto(out *FlexibleServer) { + *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 FlexibleServer. +func (in *FlexibleServer) DeepCopy() *FlexibleServer { + if in == nil { + return nil + } + out := new(FlexibleServer) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *FlexibleServer) 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 *FlexibleServerList) DeepCopyInto(out *FlexibleServerList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]FlexibleServer, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServerList. +func (in *FlexibleServerList) DeepCopy() *FlexibleServerList { + if in == nil { + return nil + } + out := new(FlexibleServerList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *FlexibleServerList) 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 *FlexibleServerOperatorConfigMaps) DeepCopyInto(out *FlexibleServerOperatorConfigMaps) { + *out = *in + if in.FullyQualifiedDomainName != nil { + in, out := &in.FullyQualifiedDomainName, &out.FullyQualifiedDomainName + *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 FlexibleServerOperatorConfigMaps. +func (in *FlexibleServerOperatorConfigMaps) DeepCopy() *FlexibleServerOperatorConfigMaps { + if in == nil { + return nil + } + out := new(FlexibleServerOperatorConfigMaps) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FlexibleServerOperatorSecrets) DeepCopyInto(out *FlexibleServerOperatorSecrets) { + *out = *in + if in.FullyQualifiedDomainName != nil { + in, out := &in.FullyQualifiedDomainName, &out.FullyQualifiedDomainName + *out = new(genruntime.SecretDestination) + **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 FlexibleServerOperatorSecrets. +func (in *FlexibleServerOperatorSecrets) DeepCopy() *FlexibleServerOperatorSecrets { + if in == nil { + return nil + } + out := new(FlexibleServerOperatorSecrets) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FlexibleServerOperatorSpec) DeepCopyInto(out *FlexibleServerOperatorSpec) { + *out = *in + if in.ConfigMaps != nil { + in, out := &in.ConfigMaps, &out.ConfigMaps + *out = new(FlexibleServerOperatorConfigMaps) + (*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.Secrets != nil { + in, out := &in.Secrets, &out.Secrets + *out = new(FlexibleServerOperatorSecrets) + (*in).DeepCopyInto(*out) + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServerOperatorSpec. +func (in *FlexibleServerOperatorSpec) DeepCopy() *FlexibleServerOperatorSpec { + if in == nil { + return nil + } + out := new(FlexibleServerOperatorSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FlexibleServer_STATUS) DeepCopyInto(out *FlexibleServer_STATUS) { + *out = *in + if in.AdministratorLogin != nil { + in, out := &in.AdministratorLogin, &out.AdministratorLogin + *out = new(string) + **out = **in + } + if in.AuthConfig != nil { + in, out := &in.AuthConfig, &out.AuthConfig + *out = new(AuthConfig_STATUS) + (*in).DeepCopyInto(*out) + } + if in.AvailabilityZone != nil { + in, out := &in.AvailabilityZone, &out.AvailabilityZone + *out = new(string) + **out = **in + } + if in.Backup != nil { + in, out := &in.Backup, &out.Backup + *out = new(Backup_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.CreateMode != nil { + in, out := &in.CreateMode, &out.CreateMode + *out = new(string) + **out = **in + } + if in.DataEncryption != nil { + in, out := &in.DataEncryption, &out.DataEncryption + *out = new(DataEncryption_STATUS) + (*in).DeepCopyInto(*out) + } + if in.FullyQualifiedDomainName != nil { + in, out := &in.FullyQualifiedDomainName, &out.FullyQualifiedDomainName + *out = new(string) + **out = **in + } + if in.HighAvailability != nil { + in, out := &in.HighAvailability, &out.HighAvailability + *out = new(HighAvailability_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(UserAssignedIdentity_STATUS) + (*in).DeepCopyInto(*out) + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MaintenanceWindow != nil { + in, out := &in.MaintenanceWindow, &out.MaintenanceWindow + *out = new(MaintenanceWindow_STATUS) + (*in).DeepCopyInto(*out) + } + if in.MinorVersion != nil { + in, out := &in.MinorVersion, &out.MinorVersion + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Network != nil { + in, out := &in.Network, &out.Network + *out = new(Network_STATUS) + (*in).DeepCopyInto(*out) + } + if in.PointInTimeUTC != nil { + in, out := &in.PointInTimeUTC, &out.PointInTimeUTC + *out = new(string) + **out = **in + } + if in.PrivateEndpointConnections != nil { + in, out := &in.PrivateEndpointConnections, &out.PrivateEndpointConnections + *out = make([]PrivateEndpointConnection_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.Replica != nil { + in, out := &in.Replica, &out.Replica + *out = new(Replica_STATUS) + (*in).DeepCopyInto(*out) + } + if in.ReplicaCapacity != nil { + in, out := &in.ReplicaCapacity, &out.ReplicaCapacity + *out = new(int) + **out = **in + } + if in.ReplicationRole != nil { + in, out := &in.ReplicationRole, &out.ReplicationRole + *out = new(string) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(Sku_STATUS) + (*in).DeepCopyInto(*out) + } + if in.SourceServerResourceId != nil { + in, out := &in.SourceServerResourceId, &out.SourceServerResourceId + *out = new(string) + **out = **in + } + if in.State != nil { + in, out := &in.State, &out.State + *out = new(string) + **out = **in + } + if in.Storage != nil { + in, out := &in.Storage, &out.Storage + *out = new(Storage_STATUS) + (*in).DeepCopyInto(*out) + } + if in.SystemData != nil { + in, out := &in.SystemData, &out.SystemData + *out = new(SystemData_STATUS) + (*in).DeepCopyInto(*out) + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]string, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.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 FlexibleServer_STATUS. +func (in *FlexibleServer_STATUS) DeepCopy() *FlexibleServer_STATUS { + if in == nil { + return nil + } + out := new(FlexibleServer_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 *FlexibleServer_Spec) DeepCopyInto(out *FlexibleServer_Spec) { + *out = *in + if in.AdministratorLogin != nil { + in, out := &in.AdministratorLogin, &out.AdministratorLogin + *out = new(string) + **out = **in + } + if in.AdministratorLoginPassword != nil { + in, out := &in.AdministratorLoginPassword, &out.AdministratorLoginPassword + *out = new(genruntime.SecretReference) + **out = **in + } + if in.AuthConfig != nil { + in, out := &in.AuthConfig, &out.AuthConfig + *out = new(AuthConfig) + (*in).DeepCopyInto(*out) + } + if in.AvailabilityZone != nil { + in, out := &in.AvailabilityZone, &out.AvailabilityZone + *out = new(string) + **out = **in + } + if in.Backup != nil { + in, out := &in.Backup, &out.Backup + *out = new(Backup) + (*in).DeepCopyInto(*out) + } + if in.CreateMode != nil { + in, out := &in.CreateMode, &out.CreateMode + *out = new(string) + **out = **in + } + if in.DataEncryption != nil { + in, out := &in.DataEncryption, &out.DataEncryption + *out = new(DataEncryption) + (*in).DeepCopyInto(*out) + } + if in.HighAvailability != nil { + in, out := &in.HighAvailability, &out.HighAvailability + *out = new(HighAvailability) + (*in).DeepCopyInto(*out) + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = new(UserAssignedIdentity) + (*in).DeepCopyInto(*out) + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MaintenanceWindow != nil { + in, out := &in.MaintenanceWindow, &out.MaintenanceWindow + *out = new(MaintenanceWindow) + (*in).DeepCopyInto(*out) + } + if in.Network != nil { + in, out := &in.Network, &out.Network + *out = new(Network) + (*in).DeepCopyInto(*out) + } + if in.OperatorSpec != nil { + in, out := &in.OperatorSpec, &out.OperatorSpec + *out = new(FlexibleServerOperatorSpec) + (*in).DeepCopyInto(*out) + } + if in.Owner != nil { + in, out := &in.Owner, &out.Owner + *out = new(genruntime.KnownResourceReference) + **out = **in + } + if in.PointInTimeUTC != nil { + in, out := &in.PointInTimeUTC, &out.PointInTimeUTC + *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.Replica != nil { + in, out := &in.Replica, &out.Replica + *out = new(Replica) + (*in).DeepCopyInto(*out) + } + if in.ReplicationRole != nil { + in, out := &in.ReplicationRole, &out.ReplicationRole + *out = new(string) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(Sku) + (*in).DeepCopyInto(*out) + } + if in.SourceServerResourceReference != nil { + in, out := &in.SourceServerResourceReference, &out.SourceServerResourceReference + *out = new(genruntime.ResourceReference) + **out = **in + } + if in.Storage != nil { + in, out := &in.Storage, &out.Storage + *out = new(Storage) + (*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.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 FlexibleServer_Spec. +func (in *FlexibleServer_Spec) DeepCopy() *FlexibleServer_Spec { + if in == nil { + return nil + } + out := new(FlexibleServer_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 *FlexibleServersConfiguration) DeepCopyInto(out *FlexibleServersConfiguration) { + *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 FlexibleServersConfiguration. +func (in *FlexibleServersConfiguration) DeepCopy() *FlexibleServersConfiguration { + if in == nil { + return nil + } + out := new(FlexibleServersConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *FlexibleServersConfiguration) 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 *FlexibleServersConfigurationList) DeepCopyInto(out *FlexibleServersConfigurationList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]FlexibleServersConfiguration, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServersConfigurationList. +func (in *FlexibleServersConfigurationList) DeepCopy() *FlexibleServersConfigurationList { + if in == nil { + return nil + } + out := new(FlexibleServersConfigurationList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *FlexibleServersConfigurationList) 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 *FlexibleServersDatabase) DeepCopyInto(out *FlexibleServersDatabase) { + *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 FlexibleServersDatabase. +func (in *FlexibleServersDatabase) DeepCopy() *FlexibleServersDatabase { + if in == nil { + return nil + } + out := new(FlexibleServersDatabase) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *FlexibleServersDatabase) 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 *FlexibleServersDatabaseList) DeepCopyInto(out *FlexibleServersDatabaseList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]FlexibleServersDatabase, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServersDatabaseList. +func (in *FlexibleServersDatabaseList) DeepCopy() *FlexibleServersDatabaseList { + if in == nil { + return nil + } + out := new(FlexibleServersDatabaseList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *FlexibleServersDatabaseList) 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 *FlexibleServersFirewallRule) DeepCopyInto(out *FlexibleServersFirewallRule) { + *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 FlexibleServersFirewallRule. +func (in *FlexibleServersFirewallRule) DeepCopy() *FlexibleServersFirewallRule { + if in == nil { + return nil + } + out := new(FlexibleServersFirewallRule) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *FlexibleServersFirewallRule) 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 *FlexibleServersFirewallRuleList) DeepCopyInto(out *FlexibleServersFirewallRuleList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]FlexibleServersFirewallRule, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServersFirewallRuleList. +func (in *FlexibleServersFirewallRuleList) DeepCopy() *FlexibleServersFirewallRuleList { + if in == nil { + return nil + } + out := new(FlexibleServersFirewallRuleList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *FlexibleServersFirewallRuleList) 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 *FlexibleServers_Configuration_STATUS) DeepCopyInto(out *FlexibleServers_Configuration_STATUS) { + *out = *in + if in.AllowedValues != nil { + in, out := &in.AllowedValues, &out.AllowedValues + *out = new(string) + **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.DataType != nil { + in, out := &in.DataType, &out.DataType + *out = new(string) + **out = **in + } + if in.DefaultValue != nil { + in, out := &in.DefaultValue, &out.DefaultValue + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DocumentationLink != nil { + in, out := &in.DocumentationLink, &out.DocumentationLink + *out = new(string) + **out = **in + } + if in.Id != nil { + in, out := &in.Id, &out.Id + *out = new(string) + **out = **in + } + if in.IsConfigPendingRestart != nil { + in, out := &in.IsConfigPendingRestart, &out.IsConfigPendingRestart + *out = new(bool) + **out = **in + } + if in.IsDynamicConfig != nil { + in, out := &in.IsDynamicConfig, &out.IsDynamicConfig + *out = new(bool) + **out = **in + } + if in.IsReadOnly != nil { + in, out := &in.IsReadOnly, &out.IsReadOnly + *out = new(bool) + **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.Source != nil { + in, out := &in.Source, &out.Source + *out = new(string) + **out = **in + } + 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 + } + if in.Unit != nil { + in, out := &in.Unit, &out.Unit + *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 FlexibleServers_Configuration_STATUS. +func (in *FlexibleServers_Configuration_STATUS) DeepCopy() *FlexibleServers_Configuration_STATUS { + if in == nil { + return nil + } + out := new(FlexibleServers_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 *FlexibleServers_Configuration_Spec) DeepCopyInto(out *FlexibleServers_Configuration_Spec) { + *out = *in + 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.Source != nil { + in, out := &in.Source, &out.Source + *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 FlexibleServers_Configuration_Spec. +func (in *FlexibleServers_Configuration_Spec) DeepCopy() *FlexibleServers_Configuration_Spec { + if in == nil { + return nil + } + out := new(FlexibleServers_Configuration_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 *FlexibleServers_Database_STATUS) DeepCopyInto(out *FlexibleServers_Database_STATUS) { + *out = *in + if in.Charset != nil { + in, out := &in.Charset, &out.Charset + *out = new(string) + **out = **in + } + if in.Collation != nil { + in, out := &in.Collation, &out.Collation + *out = new(string) + **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.Id != nil { + in, out := &in.Id, &out.Id + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.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 FlexibleServers_Database_STATUS. +func (in *FlexibleServers_Database_STATUS) DeepCopy() *FlexibleServers_Database_STATUS { + if in == nil { + return nil + } + out := new(FlexibleServers_Database_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 *FlexibleServers_Database_Spec) DeepCopyInto(out *FlexibleServers_Database_Spec) { + *out = *in + if in.Charset != nil { + in, out := &in.Charset, &out.Charset + *out = new(string) + **out = **in + } + if in.Collation != nil { + in, out := &in.Collation, &out.Collation + *out = new(string) + **out = **in + } + 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 + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServers_Database_Spec. +func (in *FlexibleServers_Database_Spec) DeepCopy() *FlexibleServers_Database_Spec { + if in == nil { + return nil + } + out := new(FlexibleServers_Database_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 *FlexibleServers_FirewallRule_STATUS) DeepCopyInto(out *FlexibleServers_FirewallRule_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.EndIpAddress != nil { + in, out := &in.EndIpAddress, &out.EndIpAddress + *out = new(string) + **out = **in + } + if in.Id != nil { + in, out := &in.Id, &out.Id + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.PropertyBag != nil { + in, out := &in.PropertyBag, &out.PropertyBag + *out = make(genruntime.PropertyBag, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.StartIpAddress != nil { + in, out := &in.StartIpAddress, &out.StartIpAddress + *out = new(string) + **out = **in + } + 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 FlexibleServers_FirewallRule_STATUS. +func (in *FlexibleServers_FirewallRule_STATUS) DeepCopy() *FlexibleServers_FirewallRule_STATUS { + if in == nil { + return nil + } + out := new(FlexibleServers_FirewallRule_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 *FlexibleServers_FirewallRule_Spec) DeepCopyInto(out *FlexibleServers_FirewallRule_Spec) { + *out = *in + if in.EndIpAddress != nil { + in, out := &in.EndIpAddress, &out.EndIpAddress + *out = new(string) + **out = **in + } + 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.StartIpAddress != nil { + in, out := &in.StartIpAddress, &out.StartIpAddress + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServers_FirewallRule_Spec. +func (in *FlexibleServers_FirewallRule_Spec) DeepCopy() *FlexibleServers_FirewallRule_Spec { + if in == nil { + return nil + } + out := new(FlexibleServers_FirewallRule_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 *HighAvailability) DeepCopyInto(out *HighAvailability) { + *out = *in + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *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.StandbyAvailabilityZone != nil { + in, out := &in.StandbyAvailabilityZone, &out.StandbyAvailabilityZone + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HighAvailability. +func (in *HighAvailability) DeepCopy() *HighAvailability { + if in == nil { + return nil + } + out := new(HighAvailability) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HighAvailability_STATUS) DeepCopyInto(out *HighAvailability_STATUS) { + *out = *in + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *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.StandbyAvailabilityZone != nil { + in, out := &in.StandbyAvailabilityZone, &out.StandbyAvailabilityZone + *out = new(string) + **out = **in + } + if in.State != nil { + in, out := &in.State, &out.State + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HighAvailability_STATUS. +func (in *HighAvailability_STATUS) DeepCopy() *HighAvailability_STATUS { + if in == nil { + return nil + } + out := new(HighAvailability_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 *MaintenanceWindow) DeepCopyInto(out *MaintenanceWindow) { + *out = *in + if in.CustomWindow != nil { + in, out := &in.CustomWindow, &out.CustomWindow + *out = new(string) + **out = **in + } + if in.DayOfWeek != nil { + in, out := &in.DayOfWeek, &out.DayOfWeek + *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.StartHour != nil { + in, out := &in.StartHour, &out.StartHour + *out = new(int) + **out = **in + } + if in.StartMinute != nil { + in, out := &in.StartMinute, &out.StartMinute + *out = new(int) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MaintenanceWindow. +func (in *MaintenanceWindow) DeepCopy() *MaintenanceWindow { + if in == nil { + return nil + } + out := new(MaintenanceWindow) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MaintenanceWindow_STATUS) DeepCopyInto(out *MaintenanceWindow_STATUS) { + *out = *in + if in.CustomWindow != nil { + in, out := &in.CustomWindow, &out.CustomWindow + *out = new(string) + **out = **in + } + if in.DayOfWeek != nil { + in, out := &in.DayOfWeek, &out.DayOfWeek + *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.StartHour != nil { + in, out := &in.StartHour, &out.StartHour + *out = new(int) + **out = **in + } + if in.StartMinute != nil { + in, out := &in.StartMinute, &out.StartMinute + *out = new(int) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MaintenanceWindow_STATUS. +func (in *MaintenanceWindow_STATUS) DeepCopy() *MaintenanceWindow_STATUS { + if in == nil { + return nil + } + out := new(MaintenanceWindow_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 *Network) DeepCopyInto(out *Network) { + *out = *in + if in.DelegatedSubnetResourceReference != nil { + in, out := &in.DelegatedSubnetResourceReference, &out.DelegatedSubnetResourceReference + *out = new(genruntime.ResourceReference) + **out = **in + } + if in.PrivateDnsZoneArmResourceReference != nil { + in, out := &in.PrivateDnsZoneArmResourceReference, &out.PrivateDnsZoneArmResourceReference + *out = new(genruntime.ResourceReference) + **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.PublicNetworkAccess != nil { + in, out := &in.PublicNetworkAccess, &out.PublicNetworkAccess + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Network. +func (in *Network) DeepCopy() *Network { + if in == nil { + return nil + } + out := new(Network) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Network_STATUS) DeepCopyInto(out *Network_STATUS) { + *out = *in + if in.DelegatedSubnetResourceId != nil { + in, out := &in.DelegatedSubnetResourceId, &out.DelegatedSubnetResourceId + *out = new(string) + **out = **in + } + if in.PrivateDnsZoneArmResourceId != nil { + in, out := &in.PrivateDnsZoneArmResourceId, &out.PrivateDnsZoneArmResourceId + *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.PublicNetworkAccess != nil { + in, out := &in.PublicNetworkAccess, &out.PublicNetworkAccess + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Network_STATUS. +func (in *Network_STATUS) DeepCopy() *Network_STATUS { + if in == nil { + return nil + } + out := new(Network_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 *PrivateEndpointConnection_STATUS) DeepCopyInto(out *PrivateEndpointConnection_STATUS) { + *out = *in + if in.Id != nil { + in, out := &in.Id, &out.Id + *out = new(string) + **out = **in + } + if in.PropertyBag != nil { + in, out := &in.PropertyBag, &out.PropertyBag + *out = make(genruntime.PropertyBag, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateEndpointConnection_STATUS. +func (in *PrivateEndpointConnection_STATUS) DeepCopy() *PrivateEndpointConnection_STATUS { + if in == nil { + return nil + } + out := new(PrivateEndpointConnection_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 *Replica) DeepCopyInto(out *Replica) { + *out = *in + if in.PromoteMode != nil { + in, out := &in.PromoteMode, &out.PromoteMode + *out = new(string) + **out = **in + } + if in.PromoteOption != nil { + in, out := &in.PromoteOption, &out.PromoteOption + *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.Role != nil { + in, out := &in.Role, &out.Role + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Replica. +func (in *Replica) DeepCopy() *Replica { + if in == nil { + return nil + } + out := new(Replica) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Replica_STATUS) DeepCopyInto(out *Replica_STATUS) { + *out = *in + if in.Capacity != nil { + in, out := &in.Capacity, &out.Capacity + *out = new(int) + **out = **in + } + if in.PromoteMode != nil { + in, out := &in.PromoteMode, &out.PromoteMode + *out = new(string) + **out = **in + } + if in.PromoteOption != nil { + in, out := &in.PromoteOption, &out.PromoteOption + *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.ReplicationState != nil { + in, out := &in.ReplicationState, &out.ReplicationState + *out = new(string) + **out = **in + } + if in.Role != nil { + in, out := &in.Role, &out.Role + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Replica_STATUS. +func (in *Replica_STATUS) DeepCopy() *Replica_STATUS { + if in == nil { + return nil + } + out := new(Replica_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 *Sku) DeepCopyInto(out *Sku) { + *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.Tier != nil { + in, out := &in.Tier, &out.Tier + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Sku. +func (in *Sku) DeepCopy() *Sku { + if in == nil { + return nil + } + out := new(Sku) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Sku_STATUS) DeepCopyInto(out *Sku_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.Tier != nil { + in, out := &in.Tier, &out.Tier + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Sku_STATUS. +func (in *Sku_STATUS) DeepCopy() *Sku_STATUS { + if in == nil { + return nil + } + out := new(Sku_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 *Storage) DeepCopyInto(out *Storage) { + *out = *in + if in.AutoGrow != nil { + in, out := &in.AutoGrow, &out.AutoGrow + *out = new(string) + **out = **in + } + if in.Iops != nil { + in, out := &in.Iops, &out.Iops + *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.StorageSizeGB != nil { + in, out := &in.StorageSizeGB, &out.StorageSizeGB + *out = new(int) + **out = **in + } + if in.Throughput != nil { + in, out := &in.Throughput, &out.Throughput + *out = new(int) + **out = **in + } + if in.Tier != nil { + in, out := &in.Tier, &out.Tier + *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 Storage. +func (in *Storage) DeepCopy() *Storage { + if in == nil { + return nil + } + out := new(Storage) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Storage_STATUS) DeepCopyInto(out *Storage_STATUS) { + *out = *in + if in.AutoGrow != nil { + in, out := &in.AutoGrow, &out.AutoGrow + *out = new(string) + **out = **in + } + if in.Iops != nil { + in, out := &in.Iops, &out.Iops + *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.StorageSizeGB != nil { + in, out := &in.StorageSizeGB, &out.StorageSizeGB + *out = new(int) + **out = **in + } + if in.Throughput != nil { + in, out := &in.Throughput, &out.Throughput + *out = new(int) + **out = **in + } + if in.Tier != nil { + in, out := &in.Tier, &out.Tier + *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 Storage_STATUS. +func (in *Storage_STATUS) DeepCopy() *Storage_STATUS { + if in == nil { + return nil + } + out := new(Storage_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 *UserAssignedIdentity) DeepCopyInto(out *UserAssignedIdentity) { + *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 UserAssignedIdentity. +func (in *UserAssignedIdentity) DeepCopy() *UserAssignedIdentity { + if in == nil { + return nil + } + out := new(UserAssignedIdentity) + 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.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]UserIdentity_STATUS, len(*in)) + for key, val := range *in { + (*out)[key] = *val.DeepCopy() + } + } +} + +// 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 *UserIdentity_STATUS) DeepCopyInto(out *UserIdentity_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 UserIdentity_STATUS. +func (in *UserIdentity_STATUS) DeepCopy() *UserIdentity_STATUS { + if in == nil { + return nil + } + out := new(UserIdentity_STATUS) + in.DeepCopyInto(out) + return out +} diff --git a/v2/api/dbforpostgresql/v1api20230601preview/structure.txt b/v2/api/dbforpostgresql/v1api20230601preview/structure.txt new file mode 100644 index 00000000000..54fa887bb28 --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/structure.txt @@ -0,0 +1,803 @@ +// Code generated by azure-service-operator-codegen. DO NOT EDIT. +github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20230601preview +├── APIVersion: Enum (1 value) +│ └── "2023-06-01-preview" +├── FlexibleServer: Resource +│ ├── Owner: github.com/Azure/azure-service-operator/v2/api/resources/v1apiv20191001.ResourceGroup +│ ├── Spec: Object (23 properties) +│ │ ├── AdministratorLogin: *string +│ │ ├── AdministratorLoginPassword: *genruntime.SecretReference +│ │ ├── AuthConfig: *Object (3 properties) +│ │ │ ├── ActiveDirectoryAuth: *Enum (2 values) +│ │ │ │ ├── "Disabled" +│ │ │ │ └── "Enabled" +│ │ │ ├── PasswordAuth: *Enum (2 values) +│ │ │ │ ├── "Disabled" +│ │ │ │ └── "Enabled" +│ │ │ └── TenantId: *string +│ │ ├── AvailabilityZone: *string +│ │ ├── AzureName: Validated (3 rules) +│ │ │ ├── Rule 0: MaxLength: 63 +│ │ │ ├── Rule 1: MinLength: 3 +│ │ │ └── Rule 2: Pattern: "^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*" +│ │ ├── Backup: *Object (2 properties) +│ │ │ ├── BackupRetentionDays: *int +│ │ │ └── GeoRedundantBackup: *Enum (2 values) +│ │ │ ├── "Disabled" +│ │ │ └── "Enabled" +│ │ ├── CreateMode: *Enum (7 values) +│ │ │ ├── "Create" +│ │ │ ├── "Default" +│ │ │ ├── "GeoRestore" +│ │ │ ├── "PointInTimeRestore" +│ │ │ ├── "Replica" +│ │ │ ├── "ReviveDropped" +│ │ │ └── "Update" +│ │ ├── DataEncryption: *Object (7 properties) +│ │ │ ├── GeoBackupEncryptionKeyStatus: *Enum (2 values) +│ │ │ │ ├── "Invalid" +│ │ │ │ └── "Valid" +│ │ │ ├── GeoBackupKeyURI: *string +│ │ │ ├── GeoBackupUserAssignedIdentityReference: *genruntime.ResourceReference +│ │ │ ├── PrimaryEncryptionKeyStatus: *Enum (2 values) +│ │ │ │ ├── "Invalid" +│ │ │ │ └── "Valid" +│ │ │ ├── PrimaryKeyURI: *string +│ │ │ ├── PrimaryUserAssignedIdentityReference: *genruntime.ResourceReference +│ │ │ └── Type: *Enum (2 values) +│ │ │ ├── "AzureKeyVault" +│ │ │ └── "SystemManaged" +│ │ ├── HighAvailability: *Object (2 properties) +│ │ │ ├── Mode: *Enum (3 values) +│ │ │ │ ├── "Disabled" +│ │ │ │ ├── "SameZone" +│ │ │ │ └── "ZoneRedundant" +│ │ │ └── StandbyAvailabilityZone: *string +│ │ ├── Identity: *Object (2 properties) +│ │ │ ├── Type: *Enum (2 values) +│ │ │ │ ├── "None" +│ │ │ │ └── "UserAssigned" +│ │ │ └── UserAssignedIdentities: Object (1 property)[] +│ │ │ └── Reference: genruntime.ResourceReference +│ │ ├── Location: *string +│ │ ├── MaintenanceWindow: *Object (4 properties) +│ │ │ ├── CustomWindow: *string +│ │ │ ├── DayOfWeek: *int +│ │ │ ├── StartHour: *int +│ │ │ └── StartMinute: *int +│ │ ├── Network: *Object (3 properties) +│ │ │ ├── DelegatedSubnetResourceReference: *genruntime.ResourceReference +│ │ │ ├── PrivateDnsZoneArmResourceReference: *genruntime.ResourceReference +│ │ │ └── PublicNetworkAccess: *Enum (2 values) +│ │ │ ├── "Disabled" +│ │ │ └── "Enabled" +│ │ ├── OperatorSpec: *Object (2 properties) +│ │ │ ├── ConfigMaps: *Object (1 property) +│ │ │ │ └── FullyQualifiedDomainName: *genruntime.ConfigMapDestination +│ │ │ └── Secrets: *Object (1 property) +│ │ │ └── FullyQualifiedDomainName: *genruntime.SecretDestination +│ │ ├── Owner: *genruntime.KnownResourceReference +│ │ ├── PointInTimeUTC: *string +│ │ ├── Replica: *Object (3 properties) +│ │ │ ├── PromoteMode: *Enum (2 values) +│ │ │ │ ├── "standalone" +│ │ │ │ └── "switchover" +│ │ │ ├── PromoteOption: *Enum (2 values) +│ │ │ │ ├── "forced" +│ │ │ │ └── "planned" +│ │ │ └── Role: *Enum (4 values) +│ │ │ ├── "AsyncReplica" +│ │ │ ├── "GeoAsyncReplica" +│ │ │ ├── "None" +│ │ │ └── "Primary" +│ │ ├── ReplicationRole: *Enum (4 values) +│ │ │ ├── "AsyncReplica" +│ │ │ ├── "GeoAsyncReplica" +│ │ │ ├── "None" +│ │ │ └── "Primary" +│ │ ├── Sku: *Object (2 properties) +│ │ │ ├── Name: *string +│ │ │ └── Tier: *Enum (3 values) +│ │ │ ├── "Burstable" +│ │ │ ├── "GeneralPurpose" +│ │ │ └── "MemoryOptimized" +│ │ ├── SourceServerResourceReference: *genruntime.ResourceReference +│ │ ├── Storage: *Object (6 properties) +│ │ │ ├── AutoGrow: *Enum (2 values) +│ │ │ │ ├── "Disabled" +│ │ │ │ └── "Enabled" +│ │ │ ├── Iops: *int +│ │ │ ├── StorageSizeGB: *int +│ │ │ ├── Throughput: *int +│ │ │ ├── Tier: *Enum (14 values) +│ │ │ │ ├── "P1" +│ │ │ │ ├── "P10" +│ │ │ │ ├── "P15" +│ │ │ │ ├── "P2" +│ │ │ │ ├── "P20" +│ │ │ │ ├── "P3" +│ │ │ │ ├── "P30" +│ │ │ │ ├── "P4" +│ │ │ │ ├── "P40" +│ │ │ │ ├── "P50" +│ │ │ │ ├── "P6" +│ │ │ │ ├── "P60" +│ │ │ │ ├── "P70" +│ │ │ │ └── "P80" +│ │ │ └── Type: *Enum (2 values) +│ │ │ ├── "PremiumV2_LRS" +│ │ │ └── "Premium_LRS" +│ │ ├── Tags: map[string]string +│ │ └── Version: *Enum (6 values) +│ │ ├── "11" +│ │ ├── "12" +│ │ ├── "13" +│ │ ├── "14" +│ │ ├── "15" +│ │ └── "16" +│ └── Status: Object (29 properties) +│ ├── AdministratorLogin: *string +│ ├── AuthConfig: *Object (3 properties) +│ │ ├── ActiveDirectoryAuth: *Enum (2 values) +│ │ │ ├── "Disabled" +│ │ │ └── "Enabled" +│ │ ├── PasswordAuth: *Enum (2 values) +│ │ │ ├── "Disabled" +│ │ │ └── "Enabled" +│ │ └── TenantId: *string +│ ├── AvailabilityZone: *string +│ ├── Backup: *Object (3 properties) +│ │ ├── BackupRetentionDays: *int +│ │ ├── EarliestRestoreDate: *string +│ │ └── GeoRedundantBackup: *Enum (2 values) +│ │ ├── "Disabled" +│ │ └── "Enabled" +│ ├── Conditions: conditions.Condition[] +│ ├── CreateMode: *Enum (7 values) +│ │ ├── "Create" +│ │ ├── "Default" +│ │ ├── "GeoRestore" +│ │ ├── "PointInTimeRestore" +│ │ ├── "Replica" +│ │ ├── "ReviveDropped" +│ │ └── "Update" +│ ├── DataEncryption: *Object (7 properties) +│ │ ├── GeoBackupEncryptionKeyStatus: *Enum (2 values) +│ │ │ ├── "Invalid" +│ │ │ └── "Valid" +│ │ ├── GeoBackupKeyURI: *string +│ │ ├── GeoBackupUserAssignedIdentityId: *string +│ │ ├── PrimaryEncryptionKeyStatus: *Enum (2 values) +│ │ │ ├── "Invalid" +│ │ │ └── "Valid" +│ │ ├── PrimaryKeyURI: *string +│ │ ├── PrimaryUserAssignedIdentityId: *string +│ │ └── Type: *Enum (2 values) +│ │ ├── "AzureKeyVault" +│ │ └── "SystemManaged" +│ ├── FullyQualifiedDomainName: *string +│ ├── HighAvailability: *Object (3 properties) +│ │ ├── Mode: *Enum (3 values) +│ │ │ ├── "Disabled" +│ │ │ ├── "SameZone" +│ │ │ └── "ZoneRedundant" +│ │ ├── StandbyAvailabilityZone: *string +│ │ └── State: *Enum (6 values) +│ │ ├── "CreatingStandby" +│ │ ├── "FailingOver" +│ │ ├── "Healthy" +│ │ ├── "NotEnabled" +│ │ ├── "RemovingStandby" +│ │ └── "ReplicatingData" +│ ├── Id: *string +│ ├── Identity: *Object (3 properties) +│ │ ├── TenantId: *string +│ │ ├── Type: *Enum (2 values) +│ │ │ ├── "None" +│ │ │ └── "UserAssigned" +│ │ └── UserAssignedIdentities: map[string]Object (2 properties) +│ │ ├── ClientId: *string +│ │ └── PrincipalId: *string +│ ├── Location: *string +│ ├── MaintenanceWindow: *Object (4 properties) +│ │ ├── CustomWindow: *string +│ │ ├── DayOfWeek: *int +│ │ ├── StartHour: *int +│ │ └── StartMinute: *int +│ ├── MinorVersion: *string +│ ├── Name: *string +│ ├── Network: *Object (3 properties) +│ │ ├── DelegatedSubnetResourceId: *string +│ │ ├── PrivateDnsZoneArmResourceId: *string +│ │ └── PublicNetworkAccess: *Enum (2 values) +│ │ ├── "Disabled" +│ │ └── "Enabled" +│ ├── PointInTimeUTC: *string +│ ├── PrivateEndpointConnections: Object (1 property)[] +│ │ └── Id: *string +│ ├── Replica: *Object (5 properties) +│ │ ├── Capacity: *int +│ │ ├── PromoteMode: *Enum (2 values) +│ │ │ ├── "standalone" +│ │ │ └── "switchover" +│ │ ├── PromoteOption: *Enum (2 values) +│ │ │ ├── "forced" +│ │ │ └── "planned" +│ │ ├── ReplicationState: *Enum (6 values) +│ │ │ ├── "Active" +│ │ │ ├── "Broken" +│ │ │ ├── "Catchup" +│ │ │ ├── "Provisioning" +│ │ │ ├── "Reconfiguring" +│ │ │ └── "Updating" +│ │ └── Role: *Enum (4 values) +│ │ ├── "AsyncReplica" +│ │ ├── "GeoAsyncReplica" +│ │ ├── "None" +│ │ └── "Primary" +│ ├── ReplicaCapacity: *int +│ ├── ReplicationRole: *Enum (4 values) +│ │ ├── "AsyncReplica" +│ │ ├── "GeoAsyncReplica" +│ │ ├── "None" +│ │ └── "Primary" +│ ├── Sku: *Object (2 properties) +│ │ ├── Name: *string +│ │ └── Tier: *Enum (3 values) +│ │ ├── "Burstable" +│ │ ├── "GeneralPurpose" +│ │ └── "MemoryOptimized" +│ ├── SourceServerResourceId: *string +│ ├── State: *Enum (7 values) +│ │ ├── "Disabled" +│ │ ├── "Dropping" +│ │ ├── "Ready" +│ │ ├── "Starting" +│ │ ├── "Stopped" +│ │ ├── "Stopping" +│ │ └── "Updating" +│ ├── Storage: *Object (6 properties) +│ │ ├── AutoGrow: *Enum (2 values) +│ │ │ ├── "Disabled" +│ │ │ └── "Enabled" +│ │ ├── Iops: *int +│ │ ├── StorageSizeGB: *int +│ │ ├── Throughput: *int +│ │ ├── Tier: *Enum (14 values) +│ │ │ ├── "P1" +│ │ │ ├── "P10" +│ │ │ ├── "P15" +│ │ │ ├── "P2" +│ │ │ ├── "P20" +│ │ │ ├── "P3" +│ │ │ ├── "P30" +│ │ │ ├── "P4" +│ │ │ ├── "P40" +│ │ │ ├── "P50" +│ │ │ ├── "P6" +│ │ │ ├── "P60" +│ │ │ ├── "P70" +│ │ │ └── "P80" +│ │ └── Type: *Enum (2 values) +│ │ ├── "PremiumV2_LRS" +│ │ └── "Premium_LRS" +│ ├── 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 +│ └── Version: *Enum (6 values) +│ ├── "11" +│ ├── "12" +│ ├── "13" +│ ├── "14" +│ ├── "15" +│ └── "16" +├── FlexibleServer_STATUS_ARM: Object (9 properties) +│ ├── Id: *string +│ ├── Identity: *Object (3 properties) +│ │ ├── TenantId: *string +│ │ ├── Type: *Enum (2 values) +│ │ │ ├── "None" +│ │ │ └── "UserAssigned" +│ │ └── UserAssignedIdentities: map[string]Object (2 properties) +│ │ ├── ClientId: *string +│ │ └── PrincipalId: *string +│ ├── Location: *string +│ ├── Name: *string +│ ├── Properties: *Object (20 properties) +│ │ ├── AdministratorLogin: *string +│ │ ├── AuthConfig: *Object (3 properties) +│ │ │ ├── ActiveDirectoryAuth: *Enum (2 values) +│ │ │ │ ├── "Disabled" +│ │ │ │ └── "Enabled" +│ │ │ ├── PasswordAuth: *Enum (2 values) +│ │ │ │ ├── "Disabled" +│ │ │ │ └── "Enabled" +│ │ │ └── TenantId: *string +│ │ ├── AvailabilityZone: *string +│ │ ├── Backup: *Object (3 properties) +│ │ │ ├── BackupRetentionDays: *int +│ │ │ ├── EarliestRestoreDate: *string +│ │ │ └── GeoRedundantBackup: *Enum (2 values) +│ │ │ ├── "Disabled" +│ │ │ └── "Enabled" +│ │ ├── CreateMode: *Enum (7 values) +│ │ │ ├── "Create" +│ │ │ ├── "Default" +│ │ │ ├── "GeoRestore" +│ │ │ ├── "PointInTimeRestore" +│ │ │ ├── "Replica" +│ │ │ ├── "ReviveDropped" +│ │ │ └── "Update" +│ │ ├── DataEncryption: *Object (7 properties) +│ │ │ ├── GeoBackupEncryptionKeyStatus: *Enum (2 values) +│ │ │ │ ├── "Invalid" +│ │ │ │ └── "Valid" +│ │ │ ├── GeoBackupKeyURI: *string +│ │ │ ├── GeoBackupUserAssignedIdentityId: *string +│ │ │ ├── PrimaryEncryptionKeyStatus: *Enum (2 values) +│ │ │ │ ├── "Invalid" +│ │ │ │ └── "Valid" +│ │ │ ├── PrimaryKeyURI: *string +│ │ │ ├── PrimaryUserAssignedIdentityId: *string +│ │ │ └── Type: *Enum (2 values) +│ │ │ ├── "AzureKeyVault" +│ │ │ └── "SystemManaged" +│ │ ├── FullyQualifiedDomainName: *string +│ │ ├── HighAvailability: *Object (3 properties) +│ │ │ ├── Mode: *Enum (3 values) +│ │ │ │ ├── "Disabled" +│ │ │ │ ├── "SameZone" +│ │ │ │ └── "ZoneRedundant" +│ │ │ ├── StandbyAvailabilityZone: *string +│ │ │ └── State: *Enum (6 values) +│ │ │ ├── "CreatingStandby" +│ │ │ ├── "FailingOver" +│ │ │ ├── "Healthy" +│ │ │ ├── "NotEnabled" +│ │ │ ├── "RemovingStandby" +│ │ │ └── "ReplicatingData" +│ │ ├── MaintenanceWindow: *Object (4 properties) +│ │ │ ├── CustomWindow: *string +│ │ │ ├── DayOfWeek: *int +│ │ │ ├── StartHour: *int +│ │ │ └── StartMinute: *int +│ │ ├── MinorVersion: *string +│ │ ├── Network: *Object (3 properties) +│ │ │ ├── DelegatedSubnetResourceId: *string +│ │ │ ├── PrivateDnsZoneArmResourceId: *string +│ │ │ └── PublicNetworkAccess: *Enum (2 values) +│ │ │ ├── "Disabled" +│ │ │ └── "Enabled" +│ │ ├── PointInTimeUTC: *string +│ │ ├── PrivateEndpointConnections: Object (1 property)[] +│ │ │ └── Id: *string +│ │ ├── Replica: *Object (5 properties) +│ │ │ ├── Capacity: *int +│ │ │ ├── PromoteMode: *Enum (2 values) +│ │ │ │ ├── "standalone" +│ │ │ │ └── "switchover" +│ │ │ ├── PromoteOption: *Enum (2 values) +│ │ │ │ ├── "forced" +│ │ │ │ └── "planned" +│ │ │ ├── ReplicationState: *Enum (6 values) +│ │ │ │ ├── "Active" +│ │ │ │ ├── "Broken" +│ │ │ │ ├── "Catchup" +│ │ │ │ ├── "Provisioning" +│ │ │ │ ├── "Reconfiguring" +│ │ │ │ └── "Updating" +│ │ │ └── Role: *Enum (4 values) +│ │ │ ├── "AsyncReplica" +│ │ │ ├── "GeoAsyncReplica" +│ │ │ ├── "None" +│ │ │ └── "Primary" +│ │ ├── ReplicaCapacity: *int +│ │ ├── ReplicationRole: *Enum (4 values) +│ │ │ ├── "AsyncReplica" +│ │ │ ├── "GeoAsyncReplica" +│ │ │ ├── "None" +│ │ │ └── "Primary" +│ │ ├── SourceServerResourceId: *string +│ │ ├── State: *Enum (7 values) +│ │ │ ├── "Disabled" +│ │ │ ├── "Dropping" +│ │ │ ├── "Ready" +│ │ │ ├── "Starting" +│ │ │ ├── "Stopped" +│ │ │ ├── "Stopping" +│ │ │ └── "Updating" +│ │ ├── Storage: *Object (6 properties) +│ │ │ ├── AutoGrow: *Enum (2 values) +│ │ │ │ ├── "Disabled" +│ │ │ │ └── "Enabled" +│ │ │ ├── Iops: *int +│ │ │ ├── StorageSizeGB: *int +│ │ │ ├── Throughput: *int +│ │ │ ├── Tier: *Enum (14 values) +│ │ │ │ ├── "P1" +│ │ │ │ ├── "P10" +│ │ │ │ ├── "P15" +│ │ │ │ ├── "P2" +│ │ │ │ ├── "P20" +│ │ │ │ ├── "P3" +│ │ │ │ ├── "P30" +│ │ │ │ ├── "P4" +│ │ │ │ ├── "P40" +│ │ │ │ ├── "P50" +│ │ │ │ ├── "P6" +│ │ │ │ ├── "P60" +│ │ │ │ ├── "P70" +│ │ │ │ └── "P80" +│ │ │ └── Type: *Enum (2 values) +│ │ │ ├── "PremiumV2_LRS" +│ │ │ └── "Premium_LRS" +│ │ └── Version: *Enum (6 values) +│ │ ├── "11" +│ │ ├── "12" +│ │ ├── "13" +│ │ ├── "14" +│ │ ├── "15" +│ │ └── "16" +│ ├── Sku: *Object (2 properties) +│ │ ├── Name: *string +│ │ └── Tier: *Enum (3 values) +│ │ ├── "Burstable" +│ │ ├── "GeneralPurpose" +│ │ └── "MemoryOptimized" +│ ├── 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 +├── FlexibleServer_Spec_ARM: Object (6 properties) +│ ├── Identity: *Object (2 properties) +│ │ ├── Type: *Enum (2 values) +│ │ │ ├── "None" +│ │ │ └── "UserAssigned" +│ │ └── UserAssignedIdentities: map[string]Object (0 properties) +│ ├── Location: *string +│ ├── Name: string +│ ├── Properties: *Object (16 properties) +│ │ ├── AdministratorLogin: *string +│ │ ├── AdministratorLoginPassword: *string +│ │ ├── AuthConfig: *Object (3 properties) +│ │ │ ├── ActiveDirectoryAuth: *Enum (2 values) +│ │ │ │ ├── "Disabled" +│ │ │ │ └── "Enabled" +│ │ │ ├── PasswordAuth: *Enum (2 values) +│ │ │ │ ├── "Disabled" +│ │ │ │ └── "Enabled" +│ │ │ └── TenantId: *string +│ │ ├── AvailabilityZone: *string +│ │ ├── Backup: *Object (2 properties) +│ │ │ ├── BackupRetentionDays: *int +│ │ │ └── GeoRedundantBackup: *Enum (2 values) +│ │ │ ├── "Disabled" +│ │ │ └── "Enabled" +│ │ ├── CreateMode: *Enum (7 values) +│ │ │ ├── "Create" +│ │ │ ├── "Default" +│ │ │ ├── "GeoRestore" +│ │ │ ├── "PointInTimeRestore" +│ │ │ ├── "Replica" +│ │ │ ├── "ReviveDropped" +│ │ │ └── "Update" +│ │ ├── DataEncryption: *Object (7 properties) +│ │ │ ├── GeoBackupEncryptionKeyStatus: *Enum (2 values) +│ │ │ │ ├── "Invalid" +│ │ │ │ └── "Valid" +│ │ │ ├── GeoBackupKeyURI: *string +│ │ │ ├── GeoBackupUserAssignedIdentityId: *string +│ │ │ ├── PrimaryEncryptionKeyStatus: *Enum (2 values) +│ │ │ │ ├── "Invalid" +│ │ │ │ └── "Valid" +│ │ │ ├── PrimaryKeyURI: *string +│ │ │ ├── PrimaryUserAssignedIdentityId: *string +│ │ │ └── Type: *Enum (2 values) +│ │ │ ├── "AzureKeyVault" +│ │ │ └── "SystemManaged" +│ │ ├── HighAvailability: *Object (2 properties) +│ │ │ ├── Mode: *Enum (3 values) +│ │ │ │ ├── "Disabled" +│ │ │ │ ├── "SameZone" +│ │ │ │ └── "ZoneRedundant" +│ │ │ └── StandbyAvailabilityZone: *string +│ │ ├── MaintenanceWindow: *Object (4 properties) +│ │ │ ├── CustomWindow: *string +│ │ │ ├── DayOfWeek: *int +│ │ │ ├── StartHour: *int +│ │ │ └── StartMinute: *int +│ │ ├── Network: *Object (3 properties) +│ │ │ ├── DelegatedSubnetResourceId: *string +│ │ │ ├── PrivateDnsZoneArmResourceId: *string +│ │ │ └── PublicNetworkAccess: *Enum (2 values) +│ │ │ ├── "Disabled" +│ │ │ └── "Enabled" +│ │ ├── PointInTimeUTC: *string +│ │ ├── Replica: *Object (3 properties) +│ │ │ ├── PromoteMode: *Enum (2 values) +│ │ │ │ ├── "standalone" +│ │ │ │ └── "switchover" +│ │ │ ├── PromoteOption: *Enum (2 values) +│ │ │ │ ├── "forced" +│ │ │ │ └── "planned" +│ │ │ └── Role: *Enum (4 values) +│ │ │ ├── "AsyncReplica" +│ │ │ ├── "GeoAsyncReplica" +│ │ │ ├── "None" +│ │ │ └── "Primary" +│ │ ├── ReplicationRole: *Enum (4 values) +│ │ │ ├── "AsyncReplica" +│ │ │ ├── "GeoAsyncReplica" +│ │ │ ├── "None" +│ │ │ └── "Primary" +│ │ ├── SourceServerResourceId: *string +│ │ ├── Storage: *Object (6 properties) +│ │ │ ├── AutoGrow: *Enum (2 values) +│ │ │ │ ├── "Disabled" +│ │ │ │ └── "Enabled" +│ │ │ ├── Iops: *int +│ │ │ ├── StorageSizeGB: *int +│ │ │ ├── Throughput: *int +│ │ │ ├── Tier: *Enum (14 values) +│ │ │ │ ├── "P1" +│ │ │ │ ├── "P10" +│ │ │ │ ├── "P15" +│ │ │ │ ├── "P2" +│ │ │ │ ├── "P20" +│ │ │ │ ├── "P3" +│ │ │ │ ├── "P30" +│ │ │ │ ├── "P4" +│ │ │ │ ├── "P40" +│ │ │ │ ├── "P50" +│ │ │ │ ├── "P6" +│ │ │ │ ├── "P60" +│ │ │ │ ├── "P70" +│ │ │ │ └── "P80" +│ │ │ └── Type: *Enum (2 values) +│ │ │ ├── "PremiumV2_LRS" +│ │ │ └── "Premium_LRS" +│ │ └── Version: *Enum (6 values) +│ │ ├── "11" +│ │ ├── "12" +│ │ ├── "13" +│ │ ├── "14" +│ │ ├── "15" +│ │ └── "16" +│ ├── Sku: *Object (2 properties) +│ │ ├── Name: *string +│ │ └── Tier: *Enum (3 values) +│ │ ├── "Burstable" +│ │ ├── "GeneralPurpose" +│ │ └── "MemoryOptimized" +│ └── Tags: map[string]string +├── FlexibleServersConfiguration: Resource +│ ├── Owner: FlexibleServer +│ ├── Spec: Object (4 properties) +│ │ ├── AzureName: Validated (2 rules) +│ │ │ ├── Rule 0: MinLength: 1 +│ │ │ └── Rule 1: Pattern: "^[-\\w\\._]+$" +│ │ ├── Owner: *genruntime.KnownResourceReference +│ │ ├── Source: *string +│ │ └── Value: *string +│ └── Status: Object (16 properties) +│ ├── AllowedValues: *string +│ ├── Conditions: conditions.Condition[] +│ ├── DataType: *Enum (4 values) +│ │ ├── "Boolean" +│ │ ├── "Enumeration" +│ │ ├── "Integer" +│ │ └── "Numeric" +│ ├── DefaultValue: *string +│ ├── Description: *string +│ ├── DocumentationLink: *string +│ ├── Id: *string +│ ├── IsConfigPendingRestart: *bool +│ ├── IsDynamicConfig: *bool +│ ├── IsReadOnly: *bool +│ ├── Name: *string +│ ├── Source: *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 +│ ├── Unit: *string +│ └── Value: *string +├── FlexibleServersDatabase: Resource +│ ├── Owner: FlexibleServer +│ ├── Spec: Object (4 properties) +│ │ ├── AzureName: Validated (2 rules) +│ │ │ ├── Rule 0: MinLength: 1 +│ │ │ └── Rule 1: Pattern: "^[-\\w\\._]+$" +│ │ ├── Charset: Validated<*string> (1 rule) +│ │ │ └── Rule 0: Pattern: "^[a-zA-Z]+\\w*$" +│ │ ├── Collation: Validated<*string> (1 rule) +│ │ │ └── Rule 0: Pattern: "^[a-zA-Z\\-]+([. ]|\\w)*$" +│ │ └── Owner: *genruntime.KnownResourceReference +│ └── Status: Object (7 properties) +│ ├── Charset: *string +│ ├── Collation: *string +│ ├── Conditions: conditions.Condition[] +│ ├── Id: *string +│ ├── Name: *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 +├── FlexibleServersFirewallRule: Resource +│ ├── Owner: FlexibleServer +│ ├── Spec: Object (4 properties) +│ │ ├── AzureName: Validated (2 rules) +│ │ │ ├── Rule 0: MinLength: 1 +│ │ │ └── Rule 1: Pattern: "^[-\\w\\._]+$" +│ │ ├── EndIpAddress: Validated<*string> (1 rule) +│ │ │ └── Rule 0: Pattern: "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$" +│ │ ├── Owner: *genruntime.KnownResourceReference +│ │ └── StartIpAddress: Validated<*string> (1 rule) +│ │ └── Rule 0: Pattern: "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$" +│ └── Status: Object (7 properties) +│ ├── Conditions: conditions.Condition[] +│ ├── EndIpAddress: *string +│ ├── Id: *string +│ ├── Name: *string +│ ├── StartIpAddress: *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 +├── FlexibleServers_Configuration_STATUS_ARM: Object (5 properties) +│ ├── Id: *string +│ ├── Name: *string +│ ├── Properties: *Object (11 properties) +│ │ ├── AllowedValues: *string +│ │ ├── DataType: *Enum (4 values) +│ │ │ ├── "Boolean" +│ │ │ ├── "Enumeration" +│ │ │ ├── "Integer" +│ │ │ └── "Numeric" +│ │ ├── DefaultValue: *string +│ │ ├── Description: *string +│ │ ├── DocumentationLink: *string +│ │ ├── IsConfigPendingRestart: *bool +│ │ ├── IsDynamicConfig: *bool +│ │ ├── IsReadOnly: *bool +│ │ ├── Source: *string +│ │ ├── Unit: *string +│ │ └── Value: *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 +├── FlexibleServers_Configuration_Spec_ARM: Object (2 properties) +│ ├── Name: string +│ └── Properties: *Object (2 properties) +│ ├── Source: *string +│ └── Value: *string +├── FlexibleServers_Database_STATUS_ARM: Object (5 properties) +│ ├── Id: *string +│ ├── Name: *string +│ ├── Properties: *Object (2 properties) +│ │ ├── Charset: *string +│ │ └── Collation: *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 +├── FlexibleServers_Database_Spec_ARM: Object (2 properties) +│ ├── Name: string +│ └── Properties: *Object (2 properties) +│ ├── Charset: *string +│ └── Collation: *string +├── FlexibleServers_FirewallRule_STATUS_ARM: Object (5 properties) +│ ├── Id: *string +│ ├── Name: *string +│ ├── Properties: *Object (2 properties) +│ │ ├── EndIpAddress: *string +│ │ └── StartIpAddress: *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 +└── FlexibleServers_FirewallRule_Spec_ARM: Object (2 properties) + ├── Name: string + └── Properties: *Object (2 properties) + ├── EndIpAddress: *string + └── StartIpAddress: *string diff --git a/v2/api/dbforpostgresql/v1api20230601preview/zz_generated.deepcopy.go b/v2/api/dbforpostgresql/v1api20230601preview/zz_generated.deepcopy.go new file mode 100644 index 00000000000..c4328b44cbd --- /dev/null +++ b/v2/api/dbforpostgresql/v1api20230601preview/zz_generated.deepcopy.go @@ -0,0 +1,3139 @@ +//go:build !ignore_autogenerated + +/* +Copyright (c) Microsoft Corporation. +Licensed under the MIT license. +*/ + +// Code generated by controller-gen. DO NOT EDIT. + +package v1api20230601preview + +import ( + "github.com/Azure/azure-service-operator/v2/pkg/genruntime" + "github.com/Azure/azure-service-operator/v2/pkg/genruntime/conditions" + "k8s.io/apimachinery/pkg/runtime" +) + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthConfig) DeepCopyInto(out *AuthConfig) { + *out = *in + if in.ActiveDirectoryAuth != nil { + in, out := &in.ActiveDirectoryAuth, &out.ActiveDirectoryAuth + *out = new(AuthConfig_ActiveDirectoryAuth) + **out = **in + } + if in.PasswordAuth != nil { + in, out := &in.PasswordAuth, &out.PasswordAuth + *out = new(AuthConfig_PasswordAuth) + **out = **in + } + if in.TenantId != nil { + in, out := &in.TenantId, &out.TenantId + *out = new(string) + **out = **in + } +} + +// 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 +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthConfig_ARM) DeepCopyInto(out *AuthConfig_ARM) { + *out = *in + if in.ActiveDirectoryAuth != nil { + in, out := &in.ActiveDirectoryAuth, &out.ActiveDirectoryAuth + *out = new(AuthConfig_ActiveDirectoryAuth) + **out = **in + } + if in.PasswordAuth != nil { + in, out := &in.PasswordAuth, &out.PasswordAuth + *out = new(AuthConfig_PasswordAuth) + **out = **in + } + if in.TenantId != nil { + in, out := &in.TenantId, &out.TenantId + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthConfig_ARM. +func (in *AuthConfig_ARM) DeepCopy() *AuthConfig_ARM { + if in == nil { + return nil + } + out := new(AuthConfig_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AuthConfig_STATUS) DeepCopyInto(out *AuthConfig_STATUS) { + *out = *in + if in.ActiveDirectoryAuth != nil { + in, out := &in.ActiveDirectoryAuth, &out.ActiveDirectoryAuth + *out = new(AuthConfig_ActiveDirectoryAuth_STATUS) + **out = **in + } + if in.PasswordAuth != nil { + in, out := &in.PasswordAuth, &out.PasswordAuth + *out = new(AuthConfig_PasswordAuth_STATUS) + **out = **in + } + if in.TenantId != nil { + in, out := &in.TenantId, &out.TenantId + *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_STATUS_ARM) DeepCopyInto(out *AuthConfig_STATUS_ARM) { + *out = *in + if in.ActiveDirectoryAuth != nil { + in, out := &in.ActiveDirectoryAuth, &out.ActiveDirectoryAuth + *out = new(AuthConfig_ActiveDirectoryAuth_STATUS) + **out = **in + } + if in.PasswordAuth != nil { + in, out := &in.PasswordAuth, &out.PasswordAuth + *out = new(AuthConfig_PasswordAuth_STATUS) + **out = **in + } + if in.TenantId != nil { + in, out := &in.TenantId, &out.TenantId + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthConfig_STATUS_ARM. +func (in *AuthConfig_STATUS_ARM) DeepCopy() *AuthConfig_STATUS_ARM { + if in == nil { + return nil + } + out := new(AuthConfig_STATUS_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Backup) DeepCopyInto(out *Backup) { + *out = *in + if in.BackupRetentionDays != nil { + in, out := &in.BackupRetentionDays, &out.BackupRetentionDays + *out = new(int) + **out = **in + } + if in.GeoRedundantBackup != nil { + in, out := &in.GeoRedundantBackup, &out.GeoRedundantBackup + *out = new(Backup_GeoRedundantBackup) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Backup. +func (in *Backup) DeepCopy() *Backup { + if in == nil { + return nil + } + out := new(Backup) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Backup_ARM) DeepCopyInto(out *Backup_ARM) { + *out = *in + if in.BackupRetentionDays != nil { + in, out := &in.BackupRetentionDays, &out.BackupRetentionDays + *out = new(int) + **out = **in + } + if in.GeoRedundantBackup != nil { + in, out := &in.GeoRedundantBackup, &out.GeoRedundantBackup + *out = new(Backup_GeoRedundantBackup) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Backup_ARM. +func (in *Backup_ARM) DeepCopy() *Backup_ARM { + if in == nil { + return nil + } + out := new(Backup_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Backup_STATUS) DeepCopyInto(out *Backup_STATUS) { + *out = *in + if in.BackupRetentionDays != nil { + in, out := &in.BackupRetentionDays, &out.BackupRetentionDays + *out = new(int) + **out = **in + } + if in.EarliestRestoreDate != nil { + in, out := &in.EarliestRestoreDate, &out.EarliestRestoreDate + *out = new(string) + **out = **in + } + if in.GeoRedundantBackup != nil { + in, out := &in.GeoRedundantBackup, &out.GeoRedundantBackup + *out = new(Backup_GeoRedundantBackup_STATUS) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Backup_STATUS. +func (in *Backup_STATUS) DeepCopy() *Backup_STATUS { + if in == nil { + return nil + } + out := new(Backup_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 *Backup_STATUS_ARM) DeepCopyInto(out *Backup_STATUS_ARM) { + *out = *in + if in.BackupRetentionDays != nil { + in, out := &in.BackupRetentionDays, &out.BackupRetentionDays + *out = new(int) + **out = **in + } + if in.EarliestRestoreDate != nil { + in, out := &in.EarliestRestoreDate, &out.EarliestRestoreDate + *out = new(string) + **out = **in + } + if in.GeoRedundantBackup != nil { + in, out := &in.GeoRedundantBackup, &out.GeoRedundantBackup + *out = new(Backup_GeoRedundantBackup_STATUS) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Backup_STATUS_ARM. +func (in *Backup_STATUS_ARM) DeepCopy() *Backup_STATUS_ARM { + if in == nil { + return nil + } + out := new(Backup_STATUS_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConfigurationProperties_ARM) DeepCopyInto(out *ConfigurationProperties_ARM) { + *out = *in + if in.Source != nil { + in, out := &in.Source, &out.Source + *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 ConfigurationProperties_ARM. +func (in *ConfigurationProperties_ARM) DeepCopy() *ConfigurationProperties_ARM { + if in == nil { + return nil + } + out := new(ConfigurationProperties_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ConfigurationProperties_STATUS_ARM) DeepCopyInto(out *ConfigurationProperties_STATUS_ARM) { + *out = *in + if in.AllowedValues != nil { + in, out := &in.AllowedValues, &out.AllowedValues + *out = new(string) + **out = **in + } + if in.DataType != nil { + in, out := &in.DataType, &out.DataType + *out = new(ConfigurationProperties_DataType_STATUS) + **out = **in + } + if in.DefaultValue != nil { + in, out := &in.DefaultValue, &out.DefaultValue + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DocumentationLink != nil { + in, out := &in.DocumentationLink, &out.DocumentationLink + *out = new(string) + **out = **in + } + if in.IsConfigPendingRestart != nil { + in, out := &in.IsConfigPendingRestart, &out.IsConfigPendingRestart + *out = new(bool) + **out = **in + } + if in.IsDynamicConfig != nil { + in, out := &in.IsDynamicConfig, &out.IsDynamicConfig + *out = new(bool) + **out = **in + } + if in.IsReadOnly != nil { + in, out := &in.IsReadOnly, &out.IsReadOnly + *out = new(bool) + **out = **in + } + if in.Source != nil { + in, out := &in.Source, &out.Source + *out = new(string) + **out = **in + } + if in.Unit != nil { + in, out := &in.Unit, &out.Unit + *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 ConfigurationProperties_STATUS_ARM. +func (in *ConfigurationProperties_STATUS_ARM) DeepCopy() *ConfigurationProperties_STATUS_ARM { + if in == nil { + return nil + } + out := new(ConfigurationProperties_STATUS_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataEncryption) DeepCopyInto(out *DataEncryption) { + *out = *in + if in.GeoBackupEncryptionKeyStatus != nil { + in, out := &in.GeoBackupEncryptionKeyStatus, &out.GeoBackupEncryptionKeyStatus + *out = new(DataEncryption_GeoBackupEncryptionKeyStatus) + **out = **in + } + if in.GeoBackupKeyURI != nil { + in, out := &in.GeoBackupKeyURI, &out.GeoBackupKeyURI + *out = new(string) + **out = **in + } + if in.GeoBackupUserAssignedIdentityReference != nil { + in, out := &in.GeoBackupUserAssignedIdentityReference, &out.GeoBackupUserAssignedIdentityReference + *out = new(genruntime.ResourceReference) + **out = **in + } + if in.PrimaryEncryptionKeyStatus != nil { + in, out := &in.PrimaryEncryptionKeyStatus, &out.PrimaryEncryptionKeyStatus + *out = new(DataEncryption_PrimaryEncryptionKeyStatus) + **out = **in + } + if in.PrimaryKeyURI != nil { + in, out := &in.PrimaryKeyURI, &out.PrimaryKeyURI + *out = new(string) + **out = **in + } + if in.PrimaryUserAssignedIdentityReference != nil { + in, out := &in.PrimaryUserAssignedIdentityReference, &out.PrimaryUserAssignedIdentityReference + *out = new(genruntime.ResourceReference) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(DataEncryption_Type) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataEncryption. +func (in *DataEncryption) DeepCopy() *DataEncryption { + if in == nil { + return nil + } + out := new(DataEncryption) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataEncryption_ARM) DeepCopyInto(out *DataEncryption_ARM) { + *out = *in + if in.GeoBackupEncryptionKeyStatus != nil { + in, out := &in.GeoBackupEncryptionKeyStatus, &out.GeoBackupEncryptionKeyStatus + *out = new(DataEncryption_GeoBackupEncryptionKeyStatus) + **out = **in + } + if in.GeoBackupKeyURI != nil { + in, out := &in.GeoBackupKeyURI, &out.GeoBackupKeyURI + *out = new(string) + **out = **in + } + if in.GeoBackupUserAssignedIdentityId != nil { + in, out := &in.GeoBackupUserAssignedIdentityId, &out.GeoBackupUserAssignedIdentityId + *out = new(string) + **out = **in + } + if in.PrimaryEncryptionKeyStatus != nil { + in, out := &in.PrimaryEncryptionKeyStatus, &out.PrimaryEncryptionKeyStatus + *out = new(DataEncryption_PrimaryEncryptionKeyStatus) + **out = **in + } + if in.PrimaryKeyURI != nil { + in, out := &in.PrimaryKeyURI, &out.PrimaryKeyURI + *out = new(string) + **out = **in + } + if in.PrimaryUserAssignedIdentityId != nil { + in, out := &in.PrimaryUserAssignedIdentityId, &out.PrimaryUserAssignedIdentityId + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(DataEncryption_Type) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataEncryption_ARM. +func (in *DataEncryption_ARM) DeepCopy() *DataEncryption_ARM { + if in == nil { + return nil + } + out := new(DataEncryption_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DataEncryption_STATUS) DeepCopyInto(out *DataEncryption_STATUS) { + *out = *in + if in.GeoBackupEncryptionKeyStatus != nil { + in, out := &in.GeoBackupEncryptionKeyStatus, &out.GeoBackupEncryptionKeyStatus + *out = new(DataEncryption_GeoBackupEncryptionKeyStatus_STATUS) + **out = **in + } + if in.GeoBackupKeyURI != nil { + in, out := &in.GeoBackupKeyURI, &out.GeoBackupKeyURI + *out = new(string) + **out = **in + } + if in.GeoBackupUserAssignedIdentityId != nil { + in, out := &in.GeoBackupUserAssignedIdentityId, &out.GeoBackupUserAssignedIdentityId + *out = new(string) + **out = **in + } + if in.PrimaryEncryptionKeyStatus != nil { + in, out := &in.PrimaryEncryptionKeyStatus, &out.PrimaryEncryptionKeyStatus + *out = new(DataEncryption_PrimaryEncryptionKeyStatus_STATUS) + **out = **in + } + if in.PrimaryKeyURI != nil { + in, out := &in.PrimaryKeyURI, &out.PrimaryKeyURI + *out = new(string) + **out = **in + } + if in.PrimaryUserAssignedIdentityId != nil { + in, out := &in.PrimaryUserAssignedIdentityId, &out.PrimaryUserAssignedIdentityId + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(DataEncryption_Type_STATUS) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataEncryption_STATUS. +func (in *DataEncryption_STATUS) DeepCopy() *DataEncryption_STATUS { + if in == nil { + return nil + } + out := new(DataEncryption_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 *DataEncryption_STATUS_ARM) DeepCopyInto(out *DataEncryption_STATUS_ARM) { + *out = *in + if in.GeoBackupEncryptionKeyStatus != nil { + in, out := &in.GeoBackupEncryptionKeyStatus, &out.GeoBackupEncryptionKeyStatus + *out = new(DataEncryption_GeoBackupEncryptionKeyStatus_STATUS) + **out = **in + } + if in.GeoBackupKeyURI != nil { + in, out := &in.GeoBackupKeyURI, &out.GeoBackupKeyURI + *out = new(string) + **out = **in + } + if in.GeoBackupUserAssignedIdentityId != nil { + in, out := &in.GeoBackupUserAssignedIdentityId, &out.GeoBackupUserAssignedIdentityId + *out = new(string) + **out = **in + } + if in.PrimaryEncryptionKeyStatus != nil { + in, out := &in.PrimaryEncryptionKeyStatus, &out.PrimaryEncryptionKeyStatus + *out = new(DataEncryption_PrimaryEncryptionKeyStatus_STATUS) + **out = **in + } + if in.PrimaryKeyURI != nil { + in, out := &in.PrimaryKeyURI, &out.PrimaryKeyURI + *out = new(string) + **out = **in + } + if in.PrimaryUserAssignedIdentityId != nil { + in, out := &in.PrimaryUserAssignedIdentityId, &out.PrimaryUserAssignedIdentityId + *out = new(string) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(DataEncryption_Type_STATUS) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataEncryption_STATUS_ARM. +func (in *DataEncryption_STATUS_ARM) DeepCopy() *DataEncryption_STATUS_ARM { + if in == nil { + return nil + } + out := new(DataEncryption_STATUS_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DatabaseProperties_ARM) DeepCopyInto(out *DatabaseProperties_ARM) { + *out = *in + if in.Charset != nil { + in, out := &in.Charset, &out.Charset + *out = new(string) + **out = **in + } + if in.Collation != nil { + in, out := &in.Collation, &out.Collation + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatabaseProperties_ARM. +func (in *DatabaseProperties_ARM) DeepCopy() *DatabaseProperties_ARM { + if in == nil { + return nil + } + out := new(DatabaseProperties_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *DatabaseProperties_STATUS_ARM) DeepCopyInto(out *DatabaseProperties_STATUS_ARM) { + *out = *in + if in.Charset != nil { + in, out := &in.Charset, &out.Charset + *out = new(string) + **out = **in + } + if in.Collation != nil { + in, out := &in.Collation, &out.Collation + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatabaseProperties_STATUS_ARM. +func (in *DatabaseProperties_STATUS_ARM) DeepCopy() *DatabaseProperties_STATUS_ARM { + if in == nil { + return nil + } + out := new(DatabaseProperties_STATUS_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FirewallRuleProperties_ARM) DeepCopyInto(out *FirewallRuleProperties_ARM) { + *out = *in + if in.EndIpAddress != nil { + in, out := &in.EndIpAddress, &out.EndIpAddress + *out = new(string) + **out = **in + } + if in.StartIpAddress != nil { + in, out := &in.StartIpAddress, &out.StartIpAddress + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FirewallRuleProperties_ARM. +func (in *FirewallRuleProperties_ARM) DeepCopy() *FirewallRuleProperties_ARM { + if in == nil { + return nil + } + out := new(FirewallRuleProperties_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FirewallRuleProperties_STATUS_ARM) DeepCopyInto(out *FirewallRuleProperties_STATUS_ARM) { + *out = *in + if in.EndIpAddress != nil { + in, out := &in.EndIpAddress, &out.EndIpAddress + *out = new(string) + **out = **in + } + if in.StartIpAddress != nil { + in, out := &in.StartIpAddress, &out.StartIpAddress + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FirewallRuleProperties_STATUS_ARM. +func (in *FirewallRuleProperties_STATUS_ARM) DeepCopy() *FirewallRuleProperties_STATUS_ARM { + if in == nil { + return nil + } + out := new(FirewallRuleProperties_STATUS_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FlexibleServer) DeepCopyInto(out *FlexibleServer) { + *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 FlexibleServer. +func (in *FlexibleServer) DeepCopy() *FlexibleServer { + if in == nil { + return nil + } + out := new(FlexibleServer) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *FlexibleServer) 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 *FlexibleServerList) DeepCopyInto(out *FlexibleServerList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]FlexibleServer, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServerList. +func (in *FlexibleServerList) DeepCopy() *FlexibleServerList { + if in == nil { + return nil + } + out := new(FlexibleServerList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *FlexibleServerList) 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 *FlexibleServerOperatorConfigMaps) DeepCopyInto(out *FlexibleServerOperatorConfigMaps) { + *out = *in + if in.FullyQualifiedDomainName != nil { + in, out := &in.FullyQualifiedDomainName, &out.FullyQualifiedDomainName + *out = new(genruntime.ConfigMapDestination) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServerOperatorConfigMaps. +func (in *FlexibleServerOperatorConfigMaps) DeepCopy() *FlexibleServerOperatorConfigMaps { + if in == nil { + return nil + } + out := new(FlexibleServerOperatorConfigMaps) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FlexibleServerOperatorSecrets) DeepCopyInto(out *FlexibleServerOperatorSecrets) { + *out = *in + if in.FullyQualifiedDomainName != nil { + in, out := &in.FullyQualifiedDomainName, &out.FullyQualifiedDomainName + *out = new(genruntime.SecretDestination) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServerOperatorSecrets. +func (in *FlexibleServerOperatorSecrets) DeepCopy() *FlexibleServerOperatorSecrets { + if in == nil { + return nil + } + out := new(FlexibleServerOperatorSecrets) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FlexibleServerOperatorSpec) DeepCopyInto(out *FlexibleServerOperatorSpec) { + *out = *in + if in.ConfigMaps != nil { + in, out := &in.ConfigMaps, &out.ConfigMaps + *out = new(FlexibleServerOperatorConfigMaps) + (*in).DeepCopyInto(*out) + } + if in.Secrets != nil { + in, out := &in.Secrets, &out.Secrets + *out = new(FlexibleServerOperatorSecrets) + (*in).DeepCopyInto(*out) + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServerOperatorSpec. +func (in *FlexibleServerOperatorSpec) DeepCopy() *FlexibleServerOperatorSpec { + if in == nil { + return nil + } + out := new(FlexibleServerOperatorSpec) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FlexibleServer_STATUS) DeepCopyInto(out *FlexibleServer_STATUS) { + *out = *in + if in.AdministratorLogin != nil { + in, out := &in.AdministratorLogin, &out.AdministratorLogin + *out = new(string) + **out = **in + } + if in.AuthConfig != nil { + in, out := &in.AuthConfig, &out.AuthConfig + *out = new(AuthConfig_STATUS) + (*in).DeepCopyInto(*out) + } + if in.AvailabilityZone != nil { + in, out := &in.AvailabilityZone, &out.AvailabilityZone + *out = new(string) + **out = **in + } + if in.Backup != nil { + in, out := &in.Backup, &out.Backup + *out = new(Backup_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.CreateMode != nil { + in, out := &in.CreateMode, &out.CreateMode + *out = new(ServerProperties_CreateMode_STATUS) + **out = **in + } + if in.DataEncryption != nil { + in, out := &in.DataEncryption, &out.DataEncryption + *out = new(DataEncryption_STATUS) + (*in).DeepCopyInto(*out) + } + if in.FullyQualifiedDomainName != nil { + in, out := &in.FullyQualifiedDomainName, &out.FullyQualifiedDomainName + *out = new(string) + **out = **in + } + if in.HighAvailability != nil { + in, out := &in.HighAvailability, &out.HighAvailability + *out = new(HighAvailability_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(UserAssignedIdentity_STATUS) + (*in).DeepCopyInto(*out) + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MaintenanceWindow != nil { + in, out := &in.MaintenanceWindow, &out.MaintenanceWindow + *out = new(MaintenanceWindow_STATUS) + (*in).DeepCopyInto(*out) + } + if in.MinorVersion != nil { + in, out := &in.MinorVersion, &out.MinorVersion + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Network != nil { + in, out := &in.Network, &out.Network + *out = new(Network_STATUS) + (*in).DeepCopyInto(*out) + } + if in.PointInTimeUTC != nil { + in, out := &in.PointInTimeUTC, &out.PointInTimeUTC + *out = new(string) + **out = **in + } + if in.PrivateEndpointConnections != nil { + in, out := &in.PrivateEndpointConnections, &out.PrivateEndpointConnections + *out = make([]PrivateEndpointConnection_STATUS, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Replica != nil { + in, out := &in.Replica, &out.Replica + *out = new(Replica_STATUS) + (*in).DeepCopyInto(*out) + } + if in.ReplicaCapacity != nil { + in, out := &in.ReplicaCapacity, &out.ReplicaCapacity + *out = new(int) + **out = **in + } + if in.ReplicationRole != nil { + in, out := &in.ReplicationRole, &out.ReplicationRole + *out = new(ReplicationRole_STATUS) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(Sku_STATUS) + (*in).DeepCopyInto(*out) + } + if in.SourceServerResourceId != nil { + in, out := &in.SourceServerResourceId, &out.SourceServerResourceId + *out = new(string) + **out = **in + } + if in.State != nil { + in, out := &in.State, &out.State + *out = new(ServerProperties_State_STATUS) + **out = **in + } + if in.Storage != nil { + in, out := &in.Storage, &out.Storage + *out = new(Storage_STATUS) + (*in).DeepCopyInto(*out) + } + if in.SystemData != nil { + in, out := &in.SystemData, &out.SystemData + *out = new(SystemData_STATUS) + (*in).DeepCopyInto(*out) + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]string, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(ServerVersion_STATUS) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServer_STATUS. +func (in *FlexibleServer_STATUS) DeepCopy() *FlexibleServer_STATUS { + if in == nil { + return nil + } + out := new(FlexibleServer_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 *FlexibleServer_STATUS_ARM) DeepCopyInto(out *FlexibleServer_STATUS_ARM) { + *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(UserAssignedIdentity_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Properties != nil { + in, out := &in.Properties, &out.Properties + *out = new(ServerProperties_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(Sku_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.SystemData != nil { + in, out := &in.SystemData, &out.SystemData + *out = new(SystemData_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]string, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServer_STATUS_ARM. +func (in *FlexibleServer_STATUS_ARM) DeepCopy() *FlexibleServer_STATUS_ARM { + if in == nil { + return nil + } + out := new(FlexibleServer_STATUS_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FlexibleServer_Spec) DeepCopyInto(out *FlexibleServer_Spec) { + *out = *in + if in.AdministratorLogin != nil { + in, out := &in.AdministratorLogin, &out.AdministratorLogin + *out = new(string) + **out = **in + } + if in.AdministratorLoginPassword != nil { + in, out := &in.AdministratorLoginPassword, &out.AdministratorLoginPassword + *out = new(genruntime.SecretReference) + **out = **in + } + if in.AuthConfig != nil { + in, out := &in.AuthConfig, &out.AuthConfig + *out = new(AuthConfig) + (*in).DeepCopyInto(*out) + } + if in.AvailabilityZone != nil { + in, out := &in.AvailabilityZone, &out.AvailabilityZone + *out = new(string) + **out = **in + } + if in.Backup != nil { + in, out := &in.Backup, &out.Backup + *out = new(Backup) + (*in).DeepCopyInto(*out) + } + if in.CreateMode != nil { + in, out := &in.CreateMode, &out.CreateMode + *out = new(ServerProperties_CreateMode) + **out = **in + } + if in.DataEncryption != nil { + in, out := &in.DataEncryption, &out.DataEncryption + *out = new(DataEncryption) + (*in).DeepCopyInto(*out) + } + if in.HighAvailability != nil { + in, out := &in.HighAvailability, &out.HighAvailability + *out = new(HighAvailability) + (*in).DeepCopyInto(*out) + } + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = new(UserAssignedIdentity) + (*in).DeepCopyInto(*out) + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.MaintenanceWindow != nil { + in, out := &in.MaintenanceWindow, &out.MaintenanceWindow + *out = new(MaintenanceWindow) + (*in).DeepCopyInto(*out) + } + if in.Network != nil { + in, out := &in.Network, &out.Network + *out = new(Network) + (*in).DeepCopyInto(*out) + } + if in.OperatorSpec != nil { + in, out := &in.OperatorSpec, &out.OperatorSpec + *out = new(FlexibleServerOperatorSpec) + (*in).DeepCopyInto(*out) + } + if in.Owner != nil { + in, out := &in.Owner, &out.Owner + *out = new(genruntime.KnownResourceReference) + **out = **in + } + if in.PointInTimeUTC != nil { + in, out := &in.PointInTimeUTC, &out.PointInTimeUTC + *out = new(string) + **out = **in + } + if in.Replica != nil { + in, out := &in.Replica, &out.Replica + *out = new(Replica) + (*in).DeepCopyInto(*out) + } + if in.ReplicationRole != nil { + in, out := &in.ReplicationRole, &out.ReplicationRole + *out = new(ReplicationRole) + **out = **in + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(Sku) + (*in).DeepCopyInto(*out) + } + if in.SourceServerResourceReference != nil { + in, out := &in.SourceServerResourceReference, &out.SourceServerResourceReference + *out = new(genruntime.ResourceReference) + **out = **in + } + if in.Storage != nil { + in, out := &in.Storage, &out.Storage + *out = new(Storage) + (*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.Version != nil { + in, out := &in.Version, &out.Version + *out = new(ServerVersion) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServer_Spec. +func (in *FlexibleServer_Spec) DeepCopy() *FlexibleServer_Spec { + if in == nil { + return nil + } + out := new(FlexibleServer_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 *FlexibleServer_Spec_ARM) DeepCopyInto(out *FlexibleServer_Spec_ARM) { + *out = *in + if in.Identity != nil { + in, out := &in.Identity, &out.Identity + *out = new(UserAssignedIdentity_ARM) + (*in).DeepCopyInto(*out) + } + if in.Location != nil { + in, out := &in.Location, &out.Location + *out = new(string) + **out = **in + } + if in.Properties != nil { + in, out := &in.Properties, &out.Properties + *out = new(ServerProperties_ARM) + (*in).DeepCopyInto(*out) + } + if in.Sku != nil { + in, out := &in.Sku, &out.Sku + *out = new(Sku_ARM) + (*in).DeepCopyInto(*out) + } + if in.Tags != nil { + in, out := &in.Tags, &out.Tags + *out = make(map[string]string, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServer_Spec_ARM. +func (in *FlexibleServer_Spec_ARM) DeepCopy() *FlexibleServer_Spec_ARM { + if in == nil { + return nil + } + out := new(FlexibleServer_Spec_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FlexibleServersConfiguration) DeepCopyInto(out *FlexibleServersConfiguration) { + *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 FlexibleServersConfiguration. +func (in *FlexibleServersConfiguration) DeepCopy() *FlexibleServersConfiguration { + if in == nil { + return nil + } + out := new(FlexibleServersConfiguration) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *FlexibleServersConfiguration) 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 *FlexibleServersConfigurationList) DeepCopyInto(out *FlexibleServersConfigurationList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]FlexibleServersConfiguration, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServersConfigurationList. +func (in *FlexibleServersConfigurationList) DeepCopy() *FlexibleServersConfigurationList { + if in == nil { + return nil + } + out := new(FlexibleServersConfigurationList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *FlexibleServersConfigurationList) 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 *FlexibleServersDatabase) DeepCopyInto(out *FlexibleServersDatabase) { + *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 FlexibleServersDatabase. +func (in *FlexibleServersDatabase) DeepCopy() *FlexibleServersDatabase { + if in == nil { + return nil + } + out := new(FlexibleServersDatabase) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *FlexibleServersDatabase) 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 *FlexibleServersDatabaseList) DeepCopyInto(out *FlexibleServersDatabaseList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]FlexibleServersDatabase, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServersDatabaseList. +func (in *FlexibleServersDatabaseList) DeepCopy() *FlexibleServersDatabaseList { + if in == nil { + return nil + } + out := new(FlexibleServersDatabaseList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *FlexibleServersDatabaseList) 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 *FlexibleServersFirewallRule) DeepCopyInto(out *FlexibleServersFirewallRule) { + *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 FlexibleServersFirewallRule. +func (in *FlexibleServersFirewallRule) DeepCopy() *FlexibleServersFirewallRule { + if in == nil { + return nil + } + out := new(FlexibleServersFirewallRule) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *FlexibleServersFirewallRule) 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 *FlexibleServersFirewallRuleList) DeepCopyInto(out *FlexibleServersFirewallRuleList) { + *out = *in + out.TypeMeta = in.TypeMeta + in.ListMeta.DeepCopyInto(&out.ListMeta) + if in.Items != nil { + in, out := &in.Items, &out.Items + *out = make([]FlexibleServersFirewallRule, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServersFirewallRuleList. +func (in *FlexibleServersFirewallRuleList) DeepCopy() *FlexibleServersFirewallRuleList { + if in == nil { + return nil + } + out := new(FlexibleServersFirewallRuleList) + in.DeepCopyInto(out) + return out +} + +// DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object. +func (in *FlexibleServersFirewallRuleList) 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 *FlexibleServers_Configuration_STATUS) DeepCopyInto(out *FlexibleServers_Configuration_STATUS) { + *out = *in + if in.AllowedValues != nil { + in, out := &in.AllowedValues, &out.AllowedValues + *out = new(string) + **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.DataType != nil { + in, out := &in.DataType, &out.DataType + *out = new(ConfigurationProperties_DataType_STATUS) + **out = **in + } + if in.DefaultValue != nil { + in, out := &in.DefaultValue, &out.DefaultValue + *out = new(string) + **out = **in + } + if in.Description != nil { + in, out := &in.Description, &out.Description + *out = new(string) + **out = **in + } + if in.DocumentationLink != nil { + in, out := &in.DocumentationLink, &out.DocumentationLink + *out = new(string) + **out = **in + } + if in.Id != nil { + in, out := &in.Id, &out.Id + *out = new(string) + **out = **in + } + if in.IsConfigPendingRestart != nil { + in, out := &in.IsConfigPendingRestart, &out.IsConfigPendingRestart + *out = new(bool) + **out = **in + } + if in.IsDynamicConfig != nil { + in, out := &in.IsDynamicConfig, &out.IsDynamicConfig + *out = new(bool) + **out = **in + } + if in.IsReadOnly != nil { + in, out := &in.IsReadOnly, &out.IsReadOnly + *out = new(bool) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Source != nil { + in, out := &in.Source, &out.Source + *out = new(string) + **out = **in + } + 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 + } + if in.Unit != nil { + in, out := &in.Unit, &out.Unit + *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 FlexibleServers_Configuration_STATUS. +func (in *FlexibleServers_Configuration_STATUS) DeepCopy() *FlexibleServers_Configuration_STATUS { + if in == nil { + return nil + } + out := new(FlexibleServers_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 *FlexibleServers_Configuration_STATUS_ARM) DeepCopyInto(out *FlexibleServers_Configuration_STATUS_ARM) { + *out = *in + if in.Id != nil { + in, out := &in.Id, &out.Id + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Properties != nil { + in, out := &in.Properties, &out.Properties + *out = new(ConfigurationProperties_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.SystemData != nil { + in, out := &in.SystemData, &out.SystemData + *out = new(SystemData_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.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 FlexibleServers_Configuration_STATUS_ARM. +func (in *FlexibleServers_Configuration_STATUS_ARM) DeepCopy() *FlexibleServers_Configuration_STATUS_ARM { + if in == nil { + return nil + } + out := new(FlexibleServers_Configuration_STATUS_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FlexibleServers_Configuration_Spec) DeepCopyInto(out *FlexibleServers_Configuration_Spec) { + *out = *in + if in.Owner != nil { + in, out := &in.Owner, &out.Owner + *out = new(genruntime.KnownResourceReference) + **out = **in + } + if in.Source != nil { + in, out := &in.Source, &out.Source + *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 FlexibleServers_Configuration_Spec. +func (in *FlexibleServers_Configuration_Spec) DeepCopy() *FlexibleServers_Configuration_Spec { + if in == nil { + return nil + } + out := new(FlexibleServers_Configuration_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 *FlexibleServers_Configuration_Spec_ARM) DeepCopyInto(out *FlexibleServers_Configuration_Spec_ARM) { + *out = *in + if in.Properties != nil { + in, out := &in.Properties, &out.Properties + *out = new(ConfigurationProperties_ARM) + (*in).DeepCopyInto(*out) + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServers_Configuration_Spec_ARM. +func (in *FlexibleServers_Configuration_Spec_ARM) DeepCopy() *FlexibleServers_Configuration_Spec_ARM { + if in == nil { + return nil + } + out := new(FlexibleServers_Configuration_Spec_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FlexibleServers_Database_STATUS) DeepCopyInto(out *FlexibleServers_Database_STATUS) { + *out = *in + if in.Charset != nil { + in, out := &in.Charset, &out.Charset + *out = new(string) + **out = **in + } + if in.Collation != nil { + in, out := &in.Collation, &out.Collation + *out = new(string) + **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.Id != nil { + in, out := &in.Id, &out.Id + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.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 FlexibleServers_Database_STATUS. +func (in *FlexibleServers_Database_STATUS) DeepCopy() *FlexibleServers_Database_STATUS { + if in == nil { + return nil + } + out := new(FlexibleServers_Database_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 *FlexibleServers_Database_STATUS_ARM) DeepCopyInto(out *FlexibleServers_Database_STATUS_ARM) { + *out = *in + if in.Id != nil { + in, out := &in.Id, &out.Id + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Properties != nil { + in, out := &in.Properties, &out.Properties + *out = new(DatabaseProperties_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.SystemData != nil { + in, out := &in.SystemData, &out.SystemData + *out = new(SystemData_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.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 FlexibleServers_Database_STATUS_ARM. +func (in *FlexibleServers_Database_STATUS_ARM) DeepCopy() *FlexibleServers_Database_STATUS_ARM { + if in == nil { + return nil + } + out := new(FlexibleServers_Database_STATUS_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FlexibleServers_Database_Spec) DeepCopyInto(out *FlexibleServers_Database_Spec) { + *out = *in + if in.Charset != nil { + in, out := &in.Charset, &out.Charset + *out = new(string) + **out = **in + } + if in.Collation != nil { + in, out := &in.Collation, &out.Collation + *out = new(string) + **out = **in + } + if in.Owner != nil { + in, out := &in.Owner, &out.Owner + *out = new(genruntime.KnownResourceReference) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServers_Database_Spec. +func (in *FlexibleServers_Database_Spec) DeepCopy() *FlexibleServers_Database_Spec { + if in == nil { + return nil + } + out := new(FlexibleServers_Database_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 *FlexibleServers_Database_Spec_ARM) DeepCopyInto(out *FlexibleServers_Database_Spec_ARM) { + *out = *in + if in.Properties != nil { + in, out := &in.Properties, &out.Properties + *out = new(DatabaseProperties_ARM) + (*in).DeepCopyInto(*out) + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServers_Database_Spec_ARM. +func (in *FlexibleServers_Database_Spec_ARM) DeepCopy() *FlexibleServers_Database_Spec_ARM { + if in == nil { + return nil + } + out := new(FlexibleServers_Database_Spec_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FlexibleServers_FirewallRule_STATUS) DeepCopyInto(out *FlexibleServers_FirewallRule_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.EndIpAddress != nil { + in, out := &in.EndIpAddress, &out.EndIpAddress + *out = new(string) + **out = **in + } + if in.Id != nil { + in, out := &in.Id, &out.Id + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.StartIpAddress != nil { + in, out := &in.StartIpAddress, &out.StartIpAddress + *out = new(string) + **out = **in + } + 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 FlexibleServers_FirewallRule_STATUS. +func (in *FlexibleServers_FirewallRule_STATUS) DeepCopy() *FlexibleServers_FirewallRule_STATUS { + if in == nil { + return nil + } + out := new(FlexibleServers_FirewallRule_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 *FlexibleServers_FirewallRule_STATUS_ARM) DeepCopyInto(out *FlexibleServers_FirewallRule_STATUS_ARM) { + *out = *in + if in.Id != nil { + in, out := &in.Id, &out.Id + *out = new(string) + **out = **in + } + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Properties != nil { + in, out := &in.Properties, &out.Properties + *out = new(FirewallRuleProperties_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.SystemData != nil { + in, out := &in.SystemData, &out.SystemData + *out = new(SystemData_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.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 FlexibleServers_FirewallRule_STATUS_ARM. +func (in *FlexibleServers_FirewallRule_STATUS_ARM) DeepCopy() *FlexibleServers_FirewallRule_STATUS_ARM { + if in == nil { + return nil + } + out := new(FlexibleServers_FirewallRule_STATUS_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *FlexibleServers_FirewallRule_Spec) DeepCopyInto(out *FlexibleServers_FirewallRule_Spec) { + *out = *in + if in.EndIpAddress != nil { + in, out := &in.EndIpAddress, &out.EndIpAddress + *out = new(string) + **out = **in + } + if in.Owner != nil { + in, out := &in.Owner, &out.Owner + *out = new(genruntime.KnownResourceReference) + **out = **in + } + if in.StartIpAddress != nil { + in, out := &in.StartIpAddress, &out.StartIpAddress + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServers_FirewallRule_Spec. +func (in *FlexibleServers_FirewallRule_Spec) DeepCopy() *FlexibleServers_FirewallRule_Spec { + if in == nil { + return nil + } + out := new(FlexibleServers_FirewallRule_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 *FlexibleServers_FirewallRule_Spec_ARM) DeepCopyInto(out *FlexibleServers_FirewallRule_Spec_ARM) { + *out = *in + if in.Properties != nil { + in, out := &in.Properties, &out.Properties + *out = new(FirewallRuleProperties_ARM) + (*in).DeepCopyInto(*out) + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FlexibleServers_FirewallRule_Spec_ARM. +func (in *FlexibleServers_FirewallRule_Spec_ARM) DeepCopy() *FlexibleServers_FirewallRule_Spec_ARM { + if in == nil { + return nil + } + out := new(FlexibleServers_FirewallRule_Spec_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HighAvailability) DeepCopyInto(out *HighAvailability) { + *out = *in + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(HighAvailability_Mode) + **out = **in + } + if in.StandbyAvailabilityZone != nil { + in, out := &in.StandbyAvailabilityZone, &out.StandbyAvailabilityZone + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HighAvailability. +func (in *HighAvailability) DeepCopy() *HighAvailability { + if in == nil { + return nil + } + out := new(HighAvailability) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HighAvailability_ARM) DeepCopyInto(out *HighAvailability_ARM) { + *out = *in + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(HighAvailability_Mode) + **out = **in + } + if in.StandbyAvailabilityZone != nil { + in, out := &in.StandbyAvailabilityZone, &out.StandbyAvailabilityZone + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HighAvailability_ARM. +func (in *HighAvailability_ARM) DeepCopy() *HighAvailability_ARM { + if in == nil { + return nil + } + out := new(HighAvailability_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *HighAvailability_STATUS) DeepCopyInto(out *HighAvailability_STATUS) { + *out = *in + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(HighAvailability_Mode_STATUS) + **out = **in + } + if in.StandbyAvailabilityZone != nil { + in, out := &in.StandbyAvailabilityZone, &out.StandbyAvailabilityZone + *out = new(string) + **out = **in + } + if in.State != nil { + in, out := &in.State, &out.State + *out = new(HighAvailability_State_STATUS) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HighAvailability_STATUS. +func (in *HighAvailability_STATUS) DeepCopy() *HighAvailability_STATUS { + if in == nil { + return nil + } + out := new(HighAvailability_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 *HighAvailability_STATUS_ARM) DeepCopyInto(out *HighAvailability_STATUS_ARM) { + *out = *in + if in.Mode != nil { + in, out := &in.Mode, &out.Mode + *out = new(HighAvailability_Mode_STATUS) + **out = **in + } + if in.StandbyAvailabilityZone != nil { + in, out := &in.StandbyAvailabilityZone, &out.StandbyAvailabilityZone + *out = new(string) + **out = **in + } + if in.State != nil { + in, out := &in.State, &out.State + *out = new(HighAvailability_State_STATUS) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HighAvailability_STATUS_ARM. +func (in *HighAvailability_STATUS_ARM) DeepCopy() *HighAvailability_STATUS_ARM { + if in == nil { + return nil + } + out := new(HighAvailability_STATUS_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MaintenanceWindow) DeepCopyInto(out *MaintenanceWindow) { + *out = *in + if in.CustomWindow != nil { + in, out := &in.CustomWindow, &out.CustomWindow + *out = new(string) + **out = **in + } + if in.DayOfWeek != nil { + in, out := &in.DayOfWeek, &out.DayOfWeek + *out = new(int) + **out = **in + } + if in.StartHour != nil { + in, out := &in.StartHour, &out.StartHour + *out = new(int) + **out = **in + } + if in.StartMinute != nil { + in, out := &in.StartMinute, &out.StartMinute + *out = new(int) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MaintenanceWindow. +func (in *MaintenanceWindow) DeepCopy() *MaintenanceWindow { + if in == nil { + return nil + } + out := new(MaintenanceWindow) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MaintenanceWindow_ARM) DeepCopyInto(out *MaintenanceWindow_ARM) { + *out = *in + if in.CustomWindow != nil { + in, out := &in.CustomWindow, &out.CustomWindow + *out = new(string) + **out = **in + } + if in.DayOfWeek != nil { + in, out := &in.DayOfWeek, &out.DayOfWeek + *out = new(int) + **out = **in + } + if in.StartHour != nil { + in, out := &in.StartHour, &out.StartHour + *out = new(int) + **out = **in + } + if in.StartMinute != nil { + in, out := &in.StartMinute, &out.StartMinute + *out = new(int) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MaintenanceWindow_ARM. +func (in *MaintenanceWindow_ARM) DeepCopy() *MaintenanceWindow_ARM { + if in == nil { + return nil + } + out := new(MaintenanceWindow_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *MaintenanceWindow_STATUS) DeepCopyInto(out *MaintenanceWindow_STATUS) { + *out = *in + if in.CustomWindow != nil { + in, out := &in.CustomWindow, &out.CustomWindow + *out = new(string) + **out = **in + } + if in.DayOfWeek != nil { + in, out := &in.DayOfWeek, &out.DayOfWeek + *out = new(int) + **out = **in + } + if in.StartHour != nil { + in, out := &in.StartHour, &out.StartHour + *out = new(int) + **out = **in + } + if in.StartMinute != nil { + in, out := &in.StartMinute, &out.StartMinute + *out = new(int) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MaintenanceWindow_STATUS. +func (in *MaintenanceWindow_STATUS) DeepCopy() *MaintenanceWindow_STATUS { + if in == nil { + return nil + } + out := new(MaintenanceWindow_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 *MaintenanceWindow_STATUS_ARM) DeepCopyInto(out *MaintenanceWindow_STATUS_ARM) { + *out = *in + if in.CustomWindow != nil { + in, out := &in.CustomWindow, &out.CustomWindow + *out = new(string) + **out = **in + } + if in.DayOfWeek != nil { + in, out := &in.DayOfWeek, &out.DayOfWeek + *out = new(int) + **out = **in + } + if in.StartHour != nil { + in, out := &in.StartHour, &out.StartHour + *out = new(int) + **out = **in + } + if in.StartMinute != nil { + in, out := &in.StartMinute, &out.StartMinute + *out = new(int) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MaintenanceWindow_STATUS_ARM. +func (in *MaintenanceWindow_STATUS_ARM) DeepCopy() *MaintenanceWindow_STATUS_ARM { + if in == nil { + return nil + } + out := new(MaintenanceWindow_STATUS_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Network) DeepCopyInto(out *Network) { + *out = *in + if in.DelegatedSubnetResourceReference != nil { + in, out := &in.DelegatedSubnetResourceReference, &out.DelegatedSubnetResourceReference + *out = new(genruntime.ResourceReference) + **out = **in + } + if in.PrivateDnsZoneArmResourceReference != nil { + in, out := &in.PrivateDnsZoneArmResourceReference, &out.PrivateDnsZoneArmResourceReference + *out = new(genruntime.ResourceReference) + **out = **in + } + if in.PublicNetworkAccess != nil { + in, out := &in.PublicNetworkAccess, &out.PublicNetworkAccess + *out = new(Network_PublicNetworkAccess) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Network. +func (in *Network) DeepCopy() *Network { + if in == nil { + return nil + } + out := new(Network) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Network_ARM) DeepCopyInto(out *Network_ARM) { + *out = *in + if in.DelegatedSubnetResourceId != nil { + in, out := &in.DelegatedSubnetResourceId, &out.DelegatedSubnetResourceId + *out = new(string) + **out = **in + } + if in.PrivateDnsZoneArmResourceId != nil { + in, out := &in.PrivateDnsZoneArmResourceId, &out.PrivateDnsZoneArmResourceId + *out = new(string) + **out = **in + } + if in.PublicNetworkAccess != nil { + in, out := &in.PublicNetworkAccess, &out.PublicNetworkAccess + *out = new(Network_PublicNetworkAccess) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Network_ARM. +func (in *Network_ARM) DeepCopy() *Network_ARM { + if in == nil { + return nil + } + out := new(Network_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Network_STATUS) DeepCopyInto(out *Network_STATUS) { + *out = *in + if in.DelegatedSubnetResourceId != nil { + in, out := &in.DelegatedSubnetResourceId, &out.DelegatedSubnetResourceId + *out = new(string) + **out = **in + } + if in.PrivateDnsZoneArmResourceId != nil { + in, out := &in.PrivateDnsZoneArmResourceId, &out.PrivateDnsZoneArmResourceId + *out = new(string) + **out = **in + } + if in.PublicNetworkAccess != nil { + in, out := &in.PublicNetworkAccess, &out.PublicNetworkAccess + *out = new(Network_PublicNetworkAccess_STATUS) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Network_STATUS. +func (in *Network_STATUS) DeepCopy() *Network_STATUS { + if in == nil { + return nil + } + out := new(Network_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 *Network_STATUS_ARM) DeepCopyInto(out *Network_STATUS_ARM) { + *out = *in + if in.DelegatedSubnetResourceId != nil { + in, out := &in.DelegatedSubnetResourceId, &out.DelegatedSubnetResourceId + *out = new(string) + **out = **in + } + if in.PrivateDnsZoneArmResourceId != nil { + in, out := &in.PrivateDnsZoneArmResourceId, &out.PrivateDnsZoneArmResourceId + *out = new(string) + **out = **in + } + if in.PublicNetworkAccess != nil { + in, out := &in.PublicNetworkAccess, &out.PublicNetworkAccess + *out = new(Network_PublicNetworkAccess_STATUS) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Network_STATUS_ARM. +func (in *Network_STATUS_ARM) DeepCopy() *Network_STATUS_ARM { + if in == nil { + return nil + } + out := new(Network_STATUS_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *PrivateEndpointConnection_STATUS) DeepCopyInto(out *PrivateEndpointConnection_STATUS) { + *out = *in + if in.Id != nil { + in, out := &in.Id, &out.Id + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateEndpointConnection_STATUS. +func (in *PrivateEndpointConnection_STATUS) DeepCopy() *PrivateEndpointConnection_STATUS { + if in == nil { + return nil + } + out := new(PrivateEndpointConnection_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 *PrivateEndpointConnection_STATUS_ARM) DeepCopyInto(out *PrivateEndpointConnection_STATUS_ARM) { + *out = *in + if in.Id != nil { + in, out := &in.Id, &out.Id + *out = new(string) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateEndpointConnection_STATUS_ARM. +func (in *PrivateEndpointConnection_STATUS_ARM) DeepCopy() *PrivateEndpointConnection_STATUS_ARM { + if in == nil { + return nil + } + out := new(PrivateEndpointConnection_STATUS_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Replica) DeepCopyInto(out *Replica) { + *out = *in + if in.PromoteMode != nil { + in, out := &in.PromoteMode, &out.PromoteMode + *out = new(Replica_PromoteMode) + **out = **in + } + if in.PromoteOption != nil { + in, out := &in.PromoteOption, &out.PromoteOption + *out = new(Replica_PromoteOption) + **out = **in + } + if in.Role != nil { + in, out := &in.Role, &out.Role + *out = new(ReplicationRole) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Replica. +func (in *Replica) DeepCopy() *Replica { + if in == nil { + return nil + } + out := new(Replica) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Replica_ARM) DeepCopyInto(out *Replica_ARM) { + *out = *in + if in.PromoteMode != nil { + in, out := &in.PromoteMode, &out.PromoteMode + *out = new(Replica_PromoteMode) + **out = **in + } + if in.PromoteOption != nil { + in, out := &in.PromoteOption, &out.PromoteOption + *out = new(Replica_PromoteOption) + **out = **in + } + if in.Role != nil { + in, out := &in.Role, &out.Role + *out = new(ReplicationRole) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Replica_ARM. +func (in *Replica_ARM) DeepCopy() *Replica_ARM { + if in == nil { + return nil + } + out := new(Replica_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Replica_STATUS) DeepCopyInto(out *Replica_STATUS) { + *out = *in + if in.Capacity != nil { + in, out := &in.Capacity, &out.Capacity + *out = new(int) + **out = **in + } + if in.PromoteMode != nil { + in, out := &in.PromoteMode, &out.PromoteMode + *out = new(Replica_PromoteMode_STATUS) + **out = **in + } + if in.PromoteOption != nil { + in, out := &in.PromoteOption, &out.PromoteOption + *out = new(Replica_PromoteOption_STATUS) + **out = **in + } + if in.ReplicationState != nil { + in, out := &in.ReplicationState, &out.ReplicationState + *out = new(Replica_ReplicationState_STATUS) + **out = **in + } + if in.Role != nil { + in, out := &in.Role, &out.Role + *out = new(ReplicationRole_STATUS) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Replica_STATUS. +func (in *Replica_STATUS) DeepCopy() *Replica_STATUS { + if in == nil { + return nil + } + out := new(Replica_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 *Replica_STATUS_ARM) DeepCopyInto(out *Replica_STATUS_ARM) { + *out = *in + if in.Capacity != nil { + in, out := &in.Capacity, &out.Capacity + *out = new(int) + **out = **in + } + if in.PromoteMode != nil { + in, out := &in.PromoteMode, &out.PromoteMode + *out = new(Replica_PromoteMode_STATUS) + **out = **in + } + if in.PromoteOption != nil { + in, out := &in.PromoteOption, &out.PromoteOption + *out = new(Replica_PromoteOption_STATUS) + **out = **in + } + if in.ReplicationState != nil { + in, out := &in.ReplicationState, &out.ReplicationState + *out = new(Replica_ReplicationState_STATUS) + **out = **in + } + if in.Role != nil { + in, out := &in.Role, &out.Role + *out = new(ReplicationRole_STATUS) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Replica_STATUS_ARM. +func (in *Replica_STATUS_ARM) DeepCopy() *Replica_STATUS_ARM { + if in == nil { + return nil + } + out := new(Replica_STATUS_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServerProperties_ARM) DeepCopyInto(out *ServerProperties_ARM) { + *out = *in + if in.AdministratorLogin != nil { + in, out := &in.AdministratorLogin, &out.AdministratorLogin + *out = new(string) + **out = **in + } + if in.AdministratorLoginPassword != nil { + in, out := &in.AdministratorLoginPassword, &out.AdministratorLoginPassword + *out = new(string) + **out = **in + } + if in.AuthConfig != nil { + in, out := &in.AuthConfig, &out.AuthConfig + *out = new(AuthConfig_ARM) + (*in).DeepCopyInto(*out) + } + if in.AvailabilityZone != nil { + in, out := &in.AvailabilityZone, &out.AvailabilityZone + *out = new(string) + **out = **in + } + if in.Backup != nil { + in, out := &in.Backup, &out.Backup + *out = new(Backup_ARM) + (*in).DeepCopyInto(*out) + } + if in.CreateMode != nil { + in, out := &in.CreateMode, &out.CreateMode + *out = new(ServerProperties_CreateMode) + **out = **in + } + if in.DataEncryption != nil { + in, out := &in.DataEncryption, &out.DataEncryption + *out = new(DataEncryption_ARM) + (*in).DeepCopyInto(*out) + } + if in.HighAvailability != nil { + in, out := &in.HighAvailability, &out.HighAvailability + *out = new(HighAvailability_ARM) + (*in).DeepCopyInto(*out) + } + if in.MaintenanceWindow != nil { + in, out := &in.MaintenanceWindow, &out.MaintenanceWindow + *out = new(MaintenanceWindow_ARM) + (*in).DeepCopyInto(*out) + } + if in.Network != nil { + in, out := &in.Network, &out.Network + *out = new(Network_ARM) + (*in).DeepCopyInto(*out) + } + if in.PointInTimeUTC != nil { + in, out := &in.PointInTimeUTC, &out.PointInTimeUTC + *out = new(string) + **out = **in + } + if in.Replica != nil { + in, out := &in.Replica, &out.Replica + *out = new(Replica_ARM) + (*in).DeepCopyInto(*out) + } + if in.ReplicationRole != nil { + in, out := &in.ReplicationRole, &out.ReplicationRole + *out = new(ReplicationRole) + **out = **in + } + if in.SourceServerResourceId != nil { + in, out := &in.SourceServerResourceId, &out.SourceServerResourceId + *out = new(string) + **out = **in + } + if in.Storage != nil { + in, out := &in.Storage, &out.Storage + *out = new(Storage_ARM) + (*in).DeepCopyInto(*out) + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(ServerVersion) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerProperties_ARM. +func (in *ServerProperties_ARM) DeepCopy() *ServerProperties_ARM { + if in == nil { + return nil + } + out := new(ServerProperties_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ServerProperties_STATUS_ARM) DeepCopyInto(out *ServerProperties_STATUS_ARM) { + *out = *in + if in.AdministratorLogin != nil { + in, out := &in.AdministratorLogin, &out.AdministratorLogin + *out = new(string) + **out = **in + } + if in.AuthConfig != nil { + in, out := &in.AuthConfig, &out.AuthConfig + *out = new(AuthConfig_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.AvailabilityZone != nil { + in, out := &in.AvailabilityZone, &out.AvailabilityZone + *out = new(string) + **out = **in + } + if in.Backup != nil { + in, out := &in.Backup, &out.Backup + *out = new(Backup_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.CreateMode != nil { + in, out := &in.CreateMode, &out.CreateMode + *out = new(ServerProperties_CreateMode_STATUS) + **out = **in + } + if in.DataEncryption != nil { + in, out := &in.DataEncryption, &out.DataEncryption + *out = new(DataEncryption_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.FullyQualifiedDomainName != nil { + in, out := &in.FullyQualifiedDomainName, &out.FullyQualifiedDomainName + *out = new(string) + **out = **in + } + if in.HighAvailability != nil { + in, out := &in.HighAvailability, &out.HighAvailability + *out = new(HighAvailability_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.MaintenanceWindow != nil { + in, out := &in.MaintenanceWindow, &out.MaintenanceWindow + *out = new(MaintenanceWindow_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.MinorVersion != nil { + in, out := &in.MinorVersion, &out.MinorVersion + *out = new(string) + **out = **in + } + if in.Network != nil { + in, out := &in.Network, &out.Network + *out = new(Network_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.PointInTimeUTC != nil { + in, out := &in.PointInTimeUTC, &out.PointInTimeUTC + *out = new(string) + **out = **in + } + if in.PrivateEndpointConnections != nil { + in, out := &in.PrivateEndpointConnections, &out.PrivateEndpointConnections + *out = make([]PrivateEndpointConnection_STATUS_ARM, len(*in)) + for i := range *in { + (*in)[i].DeepCopyInto(&(*out)[i]) + } + } + if in.Replica != nil { + in, out := &in.Replica, &out.Replica + *out = new(Replica_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.ReplicaCapacity != nil { + in, out := &in.ReplicaCapacity, &out.ReplicaCapacity + *out = new(int) + **out = **in + } + if in.ReplicationRole != nil { + in, out := &in.ReplicationRole, &out.ReplicationRole + *out = new(ReplicationRole_STATUS) + **out = **in + } + if in.SourceServerResourceId != nil { + in, out := &in.SourceServerResourceId, &out.SourceServerResourceId + *out = new(string) + **out = **in + } + if in.State != nil { + in, out := &in.State, &out.State + *out = new(ServerProperties_State_STATUS) + **out = **in + } + if in.Storage != nil { + in, out := &in.Storage, &out.Storage + *out = new(Storage_STATUS_ARM) + (*in).DeepCopyInto(*out) + } + if in.Version != nil { + in, out := &in.Version, &out.Version + *out = new(ServerVersion_STATUS) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerProperties_STATUS_ARM. +func (in *ServerProperties_STATUS_ARM) DeepCopy() *ServerProperties_STATUS_ARM { + if in == nil { + return nil + } + out := new(ServerProperties_STATUS_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Sku) DeepCopyInto(out *Sku) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Tier != nil { + in, out := &in.Tier, &out.Tier + *out = new(Sku_Tier) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Sku. +func (in *Sku) DeepCopy() *Sku { + if in == nil { + return nil + } + out := new(Sku) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Sku_ARM) DeepCopyInto(out *Sku_ARM) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Tier != nil { + in, out := &in.Tier, &out.Tier + *out = new(Sku_Tier) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Sku_ARM. +func (in *Sku_ARM) DeepCopy() *Sku_ARM { + if in == nil { + return nil + } + out := new(Sku_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Sku_STATUS) DeepCopyInto(out *Sku_STATUS) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Tier != nil { + in, out := &in.Tier, &out.Tier + *out = new(Sku_Tier_STATUS) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Sku_STATUS. +func (in *Sku_STATUS) DeepCopy() *Sku_STATUS { + if in == nil { + return nil + } + out := new(Sku_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 *Sku_STATUS_ARM) DeepCopyInto(out *Sku_STATUS_ARM) { + *out = *in + if in.Name != nil { + in, out := &in.Name, &out.Name + *out = new(string) + **out = **in + } + if in.Tier != nil { + in, out := &in.Tier, &out.Tier + *out = new(Sku_Tier_STATUS) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Sku_STATUS_ARM. +func (in *Sku_STATUS_ARM) DeepCopy() *Sku_STATUS_ARM { + if in == nil { + return nil + } + out := new(Sku_STATUS_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Storage) DeepCopyInto(out *Storage) { + *out = *in + if in.AutoGrow != nil { + in, out := &in.AutoGrow, &out.AutoGrow + *out = new(Storage_AutoGrow) + **out = **in + } + if in.Iops != nil { + in, out := &in.Iops, &out.Iops + *out = new(int) + **out = **in + } + if in.StorageSizeGB != nil { + in, out := &in.StorageSizeGB, &out.StorageSizeGB + *out = new(int) + **out = **in + } + if in.Throughput != nil { + in, out := &in.Throughput, &out.Throughput + *out = new(int) + **out = **in + } + if in.Tier != nil { + in, out := &in.Tier, &out.Tier + *out = new(Storage_Tier) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(Storage_Type) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Storage. +func (in *Storage) DeepCopy() *Storage { + if in == nil { + return nil + } + out := new(Storage) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Storage_ARM) DeepCopyInto(out *Storage_ARM) { + *out = *in + if in.AutoGrow != nil { + in, out := &in.AutoGrow, &out.AutoGrow + *out = new(Storage_AutoGrow) + **out = **in + } + if in.Iops != nil { + in, out := &in.Iops, &out.Iops + *out = new(int) + **out = **in + } + if in.StorageSizeGB != nil { + in, out := &in.StorageSizeGB, &out.StorageSizeGB + *out = new(int) + **out = **in + } + if in.Throughput != nil { + in, out := &in.Throughput, &out.Throughput + *out = new(int) + **out = **in + } + if in.Tier != nil { + in, out := &in.Tier, &out.Tier + *out = new(Storage_Tier) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(Storage_Type) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Storage_ARM. +func (in *Storage_ARM) DeepCopy() *Storage_ARM { + if in == nil { + return nil + } + out := new(Storage_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *Storage_STATUS) DeepCopyInto(out *Storage_STATUS) { + *out = *in + if in.AutoGrow != nil { + in, out := &in.AutoGrow, &out.AutoGrow + *out = new(Storage_AutoGrow_STATUS) + **out = **in + } + if in.Iops != nil { + in, out := &in.Iops, &out.Iops + *out = new(int) + **out = **in + } + if in.StorageSizeGB != nil { + in, out := &in.StorageSizeGB, &out.StorageSizeGB + *out = new(int) + **out = **in + } + if in.Throughput != nil { + in, out := &in.Throughput, &out.Throughput + *out = new(int) + **out = **in + } + if in.Tier != nil { + in, out := &in.Tier, &out.Tier + *out = new(Storage_Tier_STATUS) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(Storage_Type_STATUS) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Storage_STATUS. +func (in *Storage_STATUS) DeepCopy() *Storage_STATUS { + if in == nil { + return nil + } + out := new(Storage_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 *Storage_STATUS_ARM) DeepCopyInto(out *Storage_STATUS_ARM) { + *out = *in + if in.AutoGrow != nil { + in, out := &in.AutoGrow, &out.AutoGrow + *out = new(Storage_AutoGrow_STATUS) + **out = **in + } + if in.Iops != nil { + in, out := &in.Iops, &out.Iops + *out = new(int) + **out = **in + } + if in.StorageSizeGB != nil { + in, out := &in.StorageSizeGB, &out.StorageSizeGB + *out = new(int) + **out = **in + } + if in.Throughput != nil { + in, out := &in.Throughput, &out.Throughput + *out = new(int) + **out = **in + } + if in.Tier != nil { + in, out := &in.Tier, &out.Tier + *out = new(Storage_Tier_STATUS) + **out = **in + } + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(Storage_Type_STATUS) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Storage_STATUS_ARM. +func (in *Storage_STATUS_ARM) DeepCopy() *Storage_STATUS_ARM { + if in == nil { + return nil + } + out := new(Storage_STATUS_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SystemData_STATUS) DeepCopyInto(out *SystemData_STATUS) { + *out = *in + if in.CreatedAt != nil { + in, out := &in.CreatedAt, &out.CreatedAt + *out = new(string) + **out = **in + } + if in.CreatedBy != nil { + in, out := &in.CreatedBy, &out.CreatedBy + *out = new(string) + **out = **in + } + if in.CreatedByType != nil { + in, out := &in.CreatedByType, &out.CreatedByType + *out = new(SystemData_CreatedByType_STATUS) + **out = **in + } + if in.LastModifiedAt != nil { + in, out := &in.LastModifiedAt, &out.LastModifiedAt + *out = new(string) + **out = **in + } + if in.LastModifiedBy != nil { + in, out := &in.LastModifiedBy, &out.LastModifiedBy + *out = new(string) + **out = **in + } + if in.LastModifiedByType != nil { + in, out := &in.LastModifiedByType, &out.LastModifiedByType + *out = new(SystemData_LastModifiedByType_STATUS) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SystemData_STATUS. +func (in *SystemData_STATUS) DeepCopy() *SystemData_STATUS { + if in == nil { + return nil + } + out := new(SystemData_STATUS) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *SystemData_STATUS_ARM) DeepCopyInto(out *SystemData_STATUS_ARM) { + *out = *in + if in.CreatedAt != nil { + in, out := &in.CreatedAt, &out.CreatedAt + *out = new(string) + **out = **in + } + if in.CreatedBy != nil { + in, out := &in.CreatedBy, &out.CreatedBy + *out = new(string) + **out = **in + } + if in.CreatedByType != nil { + in, out := &in.CreatedByType, &out.CreatedByType + *out = new(SystemData_CreatedByType_STATUS) + **out = **in + } + if in.LastModifiedAt != nil { + in, out := &in.LastModifiedAt, &out.LastModifiedAt + *out = new(string) + **out = **in + } + if in.LastModifiedBy != nil { + in, out := &in.LastModifiedBy, &out.LastModifiedBy + *out = new(string) + **out = **in + } + if in.LastModifiedByType != nil { + in, out := &in.LastModifiedByType, &out.LastModifiedByType + *out = new(SystemData_LastModifiedByType_STATUS) + **out = **in + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SystemData_STATUS_ARM. +func (in *SystemData_STATUS_ARM) DeepCopy() *SystemData_STATUS_ARM { + if in == nil { + return nil + } + out := new(SystemData_STATUS_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *UserAssignedIdentity) DeepCopyInto(out *UserAssignedIdentity) { + *out = *in + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(UserAssignedIdentity_Type) + **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 UserAssignedIdentity. +func (in *UserAssignedIdentity) DeepCopy() *UserAssignedIdentity { + if in == nil { + return nil + } + out := new(UserAssignedIdentity) + 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 *UserAssignedIdentityDetails_ARM) DeepCopyInto(out *UserAssignedIdentityDetails_ARM) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UserAssignedIdentityDetails_ARM. +func (in *UserAssignedIdentityDetails_ARM) DeepCopy() *UserAssignedIdentityDetails_ARM { + if in == nil { + return nil + } + out := new(UserAssignedIdentityDetails_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *UserAssignedIdentity_ARM) DeepCopyInto(out *UserAssignedIdentity_ARM) { + *out = *in + if in.Type != nil { + in, out := &in.Type, &out.Type + *out = new(UserAssignedIdentity_Type) + **out = **in + } + if in.UserAssignedIdentities != nil { + in, out := &in.UserAssignedIdentities, &out.UserAssignedIdentities + *out = make(map[string]UserAssignedIdentityDetails_ARM, len(*in)) + for key, val := range *in { + (*out)[key] = val + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UserAssignedIdentity_ARM. +func (in *UserAssignedIdentity_ARM) DeepCopy() *UserAssignedIdentity_ARM { + if in == nil { + return nil + } + out := new(UserAssignedIdentity_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *UserAssignedIdentity_STATUS) DeepCopyInto(out *UserAssignedIdentity_STATUS) { + *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(UserAssignedIdentity_Type_STATUS) + **out = **in + } + if in.UserAssignedIdentities != nil { + in, out := &in.UserAssignedIdentities, &out.UserAssignedIdentities + *out = make(map[string]UserIdentity_STATUS, len(*in)) + for key, val := range *in { + (*out)[key] = *val.DeepCopy() + } + } +} + +// 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 *UserAssignedIdentity_STATUS_ARM) DeepCopyInto(out *UserAssignedIdentity_STATUS_ARM) { + *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(UserAssignedIdentity_Type_STATUS) + **out = **in + } + if in.UserAssignedIdentities != nil { + in, out := &in.UserAssignedIdentities, &out.UserAssignedIdentities + *out = make(map[string]UserIdentity_STATUS_ARM, len(*in)) + for key, val := range *in { + (*out)[key] = *val.DeepCopy() + } + } +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UserAssignedIdentity_STATUS_ARM. +func (in *UserAssignedIdentity_STATUS_ARM) DeepCopy() *UserAssignedIdentity_STATUS_ARM { + if in == nil { + return nil + } + out := new(UserAssignedIdentity_STATUS_ARM) + in.DeepCopyInto(out) + return out +} + +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *UserIdentity_STATUS) DeepCopyInto(out *UserIdentity_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 UserIdentity_STATUS. +func (in *UserIdentity_STATUS) DeepCopy() *UserIdentity_STATUS { + if in == nil { + return nil + } + out := new(UserIdentity_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 *UserIdentity_STATUS_ARM) DeepCopyInto(out *UserIdentity_STATUS_ARM) { + *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 UserIdentity_STATUS_ARM. +func (in *UserIdentity_STATUS_ARM) DeepCopy() *UserIdentity_STATUS_ARM { + if in == nil { + return nil + } + out := new(UserIdentity_STATUS_ARM) + in.DeepCopyInto(out) + return out +} diff --git a/v2/api/dbforpostgresql/versions_matrix.md b/v2/api/dbforpostgresql/versions_matrix.md index a304490f904..6902ab5c9c7 100644 --- a/v2/api/dbforpostgresql/versions_matrix.md +++ b/v2/api/dbforpostgresql/versions_matrix.md @@ -1,70 +1,89 @@ -| Type Definitions in package "dbforpostgresql" | v1api20210601 | v1api20220120preview | v1api20221201 | -|-----------------------------------------------|---------------|----------------------|---------------| -| APIVersion | v1api20210601 | v1api20220120preview | v1api20221201 | -| AuthConfig | | | v1api20221201 | -| AuthConfig_ActiveDirectoryAuth | | | v1api20221201 | -| AuthConfig_ActiveDirectoryAuth_STATUS | | | v1api20221201 | -| AuthConfig_PasswordAuth | | | v1api20221201 | -| AuthConfig_PasswordAuth_STATUS | | | v1api20221201 | -| AuthConfig_STATUS | | | v1api20221201 | -| Backup | v1api20210601 | v1api20220120preview | v1api20221201 | -| Backup_GeoRedundantBackup | v1api20210601 | v1api20220120preview | v1api20221201 | -| Backup_GeoRedundantBackup_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | -| Backup_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | -| ConfigurationProperties | v1api20210601 | v1api20220120preview | v1api20221201 | -| ConfigurationProperties_DataType_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | -| ConfigurationProperties_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | -| DataEncryption | | | v1api20221201 | -| DataEncryption_STATUS | | | v1api20221201 | -| DataEncryption_Type | | | v1api20221201 | -| DataEncryption_Type_STATUS | | | v1api20221201 | -| DatabaseProperties | v1api20210601 | v1api20220120preview | v1api20221201 | -| DatabaseProperties_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | -| FirewallRuleProperties | v1api20210601 | v1api20220120preview | v1api20221201 | -| FirewallRuleProperties_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | -| FlexibleServer | v1api20210601 | v1api20220120preview | v1api20221201 | -| FlexibleServer_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | -| FlexibleServer_Spec | v1api20210601 | v1api20220120preview | v1api20221201 | -| FlexibleServersConfiguration | v1api20210601 | v1api20220120preview | v1api20221201 | -| FlexibleServersDatabase | v1api20210601 | v1api20220120preview | v1api20221201 | -| FlexibleServersFirewallRule | v1api20210601 | v1api20220120preview | v1api20221201 | -| FlexibleServers_Configuration_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | -| FlexibleServers_Configuration_Spec | v1api20210601 | v1api20220120preview | v1api20221201 | -| FlexibleServers_Database_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | -| FlexibleServers_Database_Spec | v1api20210601 | v1api20220120preview | v1api20221201 | -| FlexibleServers_FirewallRule_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | -| FlexibleServers_FirewallRule_Spec | v1api20210601 | v1api20220120preview | v1api20221201 | -| HighAvailability | v1api20210601 | v1api20220120preview | v1api20221201 | -| HighAvailability_Mode | v1api20210601 | v1api20220120preview | v1api20221201 | -| HighAvailability_Mode_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | -| HighAvailability_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | -| HighAvailability_State_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | -| MaintenanceWindow | v1api20210601 | v1api20220120preview | v1api20221201 | -| MaintenanceWindow_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | -| Network | v1api20210601 | v1api20220120preview | v1api20221201 | -| Network_PublicNetworkAccess_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | -| Network_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | -| ReplicationRole | | | v1api20221201 | -| ReplicationRole_STATUS | | | v1api20221201 | -| ServerProperties | v1api20210601 | v1api20220120preview | v1api20221201 | -| ServerProperties_CreateMode | v1api20210601 | v1api20220120preview | v1api20221201 | -| ServerProperties_CreateMode_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | -| ServerProperties_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | -| ServerProperties_State_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | -| ServerVersion | v1api20210601 | v1api20220120preview | v1api20221201 | -| ServerVersion_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | -| Sku | v1api20210601 | v1api20220120preview | v1api20221201 | -| Sku_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | -| Sku_Tier | v1api20210601 | v1api20220120preview | v1api20221201 | -| Sku_Tier_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | -| Storage | v1api20210601 | v1api20220120preview | v1api20221201 | -| Storage_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | -| SystemData_CreatedByType_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | -| SystemData_LastModifiedByType_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | -| SystemData_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | -| UserAssignedIdentity | | | v1api20221201 | -| UserAssignedIdentityDetails | | | v1api20221201 | -| UserAssignedIdentity_STATUS | | | v1api20221201 | -| UserAssignedIdentity_Type | | | v1api20221201 | -| UserAssignedIdentity_Type_STATUS | | | v1api20221201 | -| UserIdentity_STATUS | | | v1api20221201 | +| Type Definitions in package "dbforpostgresql" | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +|----------------------------------------------------|---------------|----------------------|---------------|----------------------| +| APIVersion | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| AuthConfig | | | v1api20221201 | v1api20230601preview | +| AuthConfig_ActiveDirectoryAuth | | | v1api20221201 | v1api20230601preview | +| AuthConfig_ActiveDirectoryAuth_STATUS | | | v1api20221201 | v1api20230601preview | +| AuthConfig_PasswordAuth | | | v1api20221201 | v1api20230601preview | +| AuthConfig_PasswordAuth_STATUS | | | v1api20221201 | v1api20230601preview | +| AuthConfig_STATUS | | | v1api20221201 | v1api20230601preview | +| Backup | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| Backup_GeoRedundantBackup | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| Backup_GeoRedundantBackup_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| Backup_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| ConfigurationProperties | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| ConfigurationProperties_DataType_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| ConfigurationProperties_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| DataEncryption | | | v1api20221201 | v1api20230601preview | +| DataEncryption_GeoBackupEncryptionKeyStatus | | | | v1api20230601preview | +| DataEncryption_GeoBackupEncryptionKeyStatus_STATUS | | | | v1api20230601preview | +| DataEncryption_PrimaryEncryptionKeyStatus | | | | v1api20230601preview | +| DataEncryption_PrimaryEncryptionKeyStatus_STATUS | | | | v1api20230601preview | +| DataEncryption_STATUS | | | v1api20221201 | v1api20230601preview | +| DataEncryption_Type | | | v1api20221201 | v1api20230601preview | +| DataEncryption_Type_STATUS | | | v1api20221201 | v1api20230601preview | +| DatabaseProperties | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| DatabaseProperties_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| FirewallRuleProperties | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| FirewallRuleProperties_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| FlexibleServer | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| FlexibleServer_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| FlexibleServer_Spec | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| FlexibleServersConfiguration | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| FlexibleServersDatabase | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| FlexibleServersFirewallRule | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| FlexibleServers_Configuration_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| FlexibleServers_Configuration_Spec | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| FlexibleServers_Database_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| FlexibleServers_Database_Spec | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| FlexibleServers_FirewallRule_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| FlexibleServers_FirewallRule_Spec | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| HighAvailability | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| HighAvailability_Mode | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| HighAvailability_Mode_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| HighAvailability_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| HighAvailability_State_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| MaintenanceWindow | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| MaintenanceWindow_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| Network | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| Network_PublicNetworkAccess | | | | v1api20230601preview | +| Network_PublicNetworkAccess_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| Network_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| PrivateEndpointConnection_STATUS | | | | v1api20230601preview | +| Replica | | | | v1api20230601preview | +| Replica_PromoteMode | | | | v1api20230601preview | +| Replica_PromoteMode_STATUS | | | | v1api20230601preview | +| Replica_PromoteOption | | | | v1api20230601preview | +| Replica_PromoteOption_STATUS | | | | v1api20230601preview | +| Replica_ReplicationState_STATUS | | | | v1api20230601preview | +| Replica_STATUS | | | | v1api20230601preview | +| ReplicationRole | | | v1api20221201 | v1api20230601preview | +| ReplicationRole_STATUS | | | v1api20221201 | v1api20230601preview | +| ServerProperties | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| ServerProperties_CreateMode | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| ServerProperties_CreateMode_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| ServerProperties_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| ServerProperties_State_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| ServerVersion | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| ServerVersion_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| Sku | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| Sku_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| Sku_Tier | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| Sku_Tier_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| Storage | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| Storage_AutoGrow | | | | v1api20230601preview | +| Storage_AutoGrow_STATUS | | | | v1api20230601preview | +| Storage_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| Storage_Tier | | | | v1api20230601preview | +| Storage_Tier_STATUS | | | | v1api20230601preview | +| Storage_Type | | | | v1api20230601preview | +| Storage_Type_STATUS | | | | v1api20230601preview | +| SystemData_CreatedByType_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| SystemData_LastModifiedByType_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| SystemData_STATUS | v1api20210601 | v1api20220120preview | v1api20221201 | v1api20230601preview | +| UserAssignedIdentity | | | v1api20221201 | v1api20230601preview | +| UserAssignedIdentityDetails | | | v1api20221201 | v1api20230601preview | +| UserAssignedIdentity_STATUS | | | v1api20221201 | v1api20230601preview | +| UserAssignedIdentity_Type | | | v1api20221201 | v1api20230601preview | +| UserAssignedIdentity_Type_STATUS | | | v1api20221201 | v1api20230601preview | +| UserIdentity_STATUS | | | v1api20221201 | v1api20230601preview | diff --git a/v2/azure-arm.yaml b/v2/azure-arm.yaml index 5f475cd4895..65bae16623e 100644 --- a/v2/azure-arm.yaml +++ b/v2/azure-arm.yaml @@ -62,6 +62,11 @@ typeFilters: version: v*20220120preview because: We want to export this particular preview version + - action: include + group: dbforpostgresql + version: v*20230601preview + because: We want to export this particular preview version + - action: include group: containerservice version: v*20230202preview @@ -1458,6 +1463,36 @@ objectModelConfiguration: $armReference: true PrivateDnsZoneArmResourceId: $armReference: true + 2023-06-01-preview: + DataEncryption: + PrimaryUserAssignedIdentityId: + $armReference: true + GeoBackupUserAssignedIdentityId: + $armReference: true + FlexibleServer: + $azureGeneratedSecrets: + - FullyQualifiedDomainName + $export: true + $supportedFrom: v2.6.0 + $generatedConfigs: + FullyQualifiedDomainName: $.Status.FullyQualifiedDomainName + FlexibleServers_Configuration: + $exportAs: FlexibleServersConfiguration + $supportedFrom: v2.6.0 + FlexibleServers_Database: + $exportAs: FlexibleServersDatabase + $supportedFrom: v2.6.0 + FlexibleServers_FirewallRule: + $exportAs: FlexibleServersFirewallRule + $supportedFrom: v2.6.0 + ServerProperties: + SourceServerResourceId: + $armReference: true + Network: + DelegatedSubnetResourceId: + $armReference: true + PrivateDnsZoneArmResourceId: + $armReference: true devices: 2021-07-02: IotHub: diff --git a/v2/internal/controllers/controller_resources_gen.go b/v2/internal/controllers/controller_resources_gen.go index 446fb5b9b95..651a9b19914 100644 --- a/v2/internal/controllers/controller_resources_gen.go +++ b/v2/internal/controllers/controller_resources_gen.go @@ -79,6 +79,8 @@ import ( dbforpostgresql_v20220120ps "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20220120preview/storage" dbforpostgresql_v20221201 "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20221201" dbforpostgresql_v20221201s "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20221201/storage" + dbforpostgresql_v20230601p "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20230601preview" + dbforpostgresql_v20230601ps "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20230601preview/storage" devices_customizations "github.com/Azure/azure-service-operator/v2/api/devices/customizations" devices_v20210702 "github.com/Azure/azure-service-operator/v2/api/devices/v1api20210702" devices_v20210702s "github.com/Azure/azure-service-operator/v2/api/devices/v1api20210702/storage" @@ -1157,6 +1159,18 @@ func getKnownTypes() []client.Object { new(dbforpostgresql_v20221201s.FlexibleServersConfiguration), new(dbforpostgresql_v20221201s.FlexibleServersDatabase), new(dbforpostgresql_v20221201s.FlexibleServersFirewallRule)) + result = append( + result, + new(dbforpostgresql_v20230601p.FlexibleServer), + new(dbforpostgresql_v20230601p.FlexibleServersConfiguration), + new(dbforpostgresql_v20230601p.FlexibleServersDatabase), + new(dbforpostgresql_v20230601p.FlexibleServersFirewallRule)) + result = append( + result, + new(dbforpostgresql_v20230601ps.FlexibleServer), + new(dbforpostgresql_v20230601ps.FlexibleServersConfiguration), + new(dbforpostgresql_v20230601ps.FlexibleServersDatabase), + new(dbforpostgresql_v20230601ps.FlexibleServersFirewallRule)) result = append(result, new(devices_v20210702.IotHub)) result = append(result, new(devices_v20210702s.IotHub)) result = append( @@ -1604,6 +1618,8 @@ func createScheme() *runtime.Scheme { _ = dbforpostgresql_v20220120ps.AddToScheme(scheme) _ = dbforpostgresql_v20221201.AddToScheme(scheme) _ = dbforpostgresql_v20221201s.AddToScheme(scheme) + _ = dbforpostgresql_v20230601p.AddToScheme(scheme) + _ = dbforpostgresql_v20230601ps.AddToScheme(scheme) _ = devices_v20210702.AddToScheme(scheme) _ = devices_v20210702s.AddToScheme(scheme) _ = documentdb_v20210515.AddToScheme(scheme) diff --git a/v2/internal/controllers/dbforpostgresql_flexibleserver_crud_v1api20220120preview_test.go b/v2/internal/controllers/dbforpostgresql_flexibleserver_crud_v1api20230601preview_test.go similarity index 90% rename from v2/internal/controllers/dbforpostgresql_flexibleserver_crud_v1api20220120preview_test.go rename to v2/internal/controllers/dbforpostgresql_flexibleserver_crud_v1api20230601preview_test.go index 2458bbf0bc8..2891fde68a8 100644 --- a/v2/internal/controllers/dbforpostgresql_flexibleserver_crud_v1api20220120preview_test.go +++ b/v2/internal/controllers/dbforpostgresql_flexibleserver_crud_v1api20230601preview_test.go @@ -13,13 +13,13 @@ import ( v1 "k8s.io/api/core/v1" "sigs.k8s.io/controller-runtime/pkg/client" - postgresql "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20220120preview" + postgresql "github.com/Azure/azure-service-operator/v2/api/dbforpostgresql/v1api20230601preview" "github.com/Azure/azure-service-operator/v2/internal/testcommon" "github.com/Azure/azure-service-operator/v2/internal/util/to" "github.com/Azure/azure-service-operator/v2/pkg/genruntime" ) -func Test_DBForPostgreSQL_FlexibleServer_20220120preview_CRUD(t *testing.T) { +func Test_DBForPostgreSQL_FlexibleServer_20230601Preview_CRUD(t *testing.T) { t.Parallel() if *isLive { @@ -30,8 +30,8 @@ func Test_DBForPostgreSQL_FlexibleServer_20220120preview_CRUD(t *testing.T) { ctx := context.Background() tc := globalTestContext.ForTest(t) - //location := tc.AzureRegion Capacity crunch in West US 2 makes this not work when live - location := "eastus" + // Capacity crunch in West US 2 makes this not work when live + tc.AzureRegion = to.Ptr("uksouth") rg := tc.CreateTestResourceGroupAndWait() @@ -49,13 +49,13 @@ func Test_DBForPostgreSQL_FlexibleServer_20220120preview_CRUD(t *testing.T) { Name: secret.Name, Key: adminPasswordKey, } - version := postgresql.ServerVersion_13 + version := postgresql.ServerVersion_16 tier := postgresql.Sku_Tier_GeneralPurpose fqdnConfig := "fqdnconfig" flexibleServer := &postgresql.FlexibleServer{ ObjectMeta: tc.MakeObjectMeta("postgresql"), Spec: postgresql.FlexibleServer_Spec{ - Location: &location, + Location: tc.AzureRegion, Owner: testcommon.AsOwner(rg), Version: &version, Sku: &postgresql.Sku{ @@ -108,19 +108,19 @@ func Test_DBForPostgreSQL_FlexibleServer_20220120preview_CRUD(t *testing.T) { testcommon.Subtest{ Name: "Flexible servers database CRUD", Test: func(tc *testcommon.KubePerTestContext) { - FlexibleServer_Database_20220120preview_CRUD(tc, flexibleServer) + FlexibleServer_Database_20230601Preview_CRUD(tc, flexibleServer) }, }, testcommon.Subtest{ Name: "Flexible servers firewall CRUD", Test: func(tc *testcommon.KubePerTestContext) { - FlexibleServer_FirewallRule_20220120preview_CRUD(tc, flexibleServer) + FlexibleServer_FirewallRule_20230601Preview_CRUD(tc, flexibleServer) }, }, testcommon.Subtest{ Name: "Flexible servers configuration CRUD", Test: func(tc *testcommon.KubePerTestContext) { - FlexibleServer_Configuration_20220120preview_CRUD(tc, flexibleServer) + FlexibleServer_Configuration_20230601Preview_CRUD(tc, flexibleServer) }, }, ) @@ -161,7 +161,7 @@ func FlexibleServer_ConfigValuesWrittenToSameConfigMap(tc *testcommon.KubePerTes *flexibleServer.Status.FullyQualifiedDomainName) } -func FlexibleServer_Database_20220120preview_CRUD(tc *testcommon.KubePerTestContext, flexibleServer *postgresql.FlexibleServer) { +func FlexibleServer_Database_20230601Preview_CRUD(tc *testcommon.KubePerTestContext, flexibleServer *postgresql.FlexibleServer) { database := &postgresql.FlexibleServersDatabase{ ObjectMeta: tc.MakeObjectMeta("db"), Spec: postgresql.FlexibleServers_Database_Spec{ @@ -175,7 +175,7 @@ func FlexibleServer_Database_20220120preview_CRUD(tc *testcommon.KubePerTestCont tc.Expect(database.Status.Id).ToNot(BeNil()) } -func FlexibleServer_FirewallRule_20220120preview_CRUD(tc *testcommon.KubePerTestContext, flexibleServer *postgresql.FlexibleServer) { +func FlexibleServer_FirewallRule_20230601Preview_CRUD(tc *testcommon.KubePerTestContext, flexibleServer *postgresql.FlexibleServer) { firewall := &postgresql.FlexibleServersFirewallRule{ ObjectMeta: tc.MakeObjectMeta("fwrule"), Spec: postgresql.FlexibleServers_FirewallRule_Spec{ @@ -192,7 +192,7 @@ func FlexibleServer_FirewallRule_20220120preview_CRUD(tc *testcommon.KubePerTest tc.Expect(firewall.Status.Id).ToNot(BeNil()) } -func FlexibleServer_Configuration_20220120preview_CRUD(tc *testcommon.KubePerTestContext, flexibleServer *postgresql.FlexibleServer) { +func FlexibleServer_Configuration_20230601Preview_CRUD(tc *testcommon.KubePerTestContext, flexibleServer *postgresql.FlexibleServer) { configuration := &postgresql.FlexibleServersConfiguration{ ObjectMeta: tc.MakeObjectMeta("pgaudit"), Spec: postgresql.FlexibleServers_Configuration_Spec{ diff --git a/v2/internal/controllers/recordings/Test_DBForPostgreSQL_FlexibleServer_20220120preview_CRUD.yaml b/v2/internal/controllers/recordings/Test_DBForPostgreSQL_FlexibleServer_20220120preview_CRUD.yaml deleted file mode 100644 index 23215b7f512..00000000000 --- a/v2/internal/controllers/recordings/Test_DBForPostgreSQL_FlexibleServer_20220120preview_CRUD.yaml +++ /dev/null @@ -1,1746 +0,0 @@ ---- -version: 1 -interactions: -- request: - body: '{"location":"westus2","name":"asotest-rg-ljqsjm","tags":{"CreatedAt":"2001-02-03T04:05:06Z"}}' - form: {} - headers: - Accept: - - application/json - Content-Length: - - "93" - Content-Type: - - application/json - Test-Request-Attempt: - - "0" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm?api-version=2020-06-01 - method: PUT - response: - body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm","name":"asotest-rg-ljqsjm","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-Content-Type-Options: - - nosniff - status: 201 Created - code: 201 - duration: "" -- request: - body: "" - form: {} - headers: - Accept: - - application/json - Test-Request-Attempt: - - "0" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm?api-version=2020-06-01 - method: GET - response: - body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm","name":"asotest-rg-ljqsjm","type":"Microsoft.Resources/resourceGroups","location":"westus2","tags":{"CreatedAt":"2001-02-03T04:05:06Z"},"properties":{"provisioningState":"Succeeded"}}' - headers: - Cache-Control: - - no-cache - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - Vary: - - Accept-Encoding - X-Content-Type-Options: - - nosniff - status: 200 OK - code: 200 - duration: "" -- request: - body: "" - form: {} - headers: - Accept: - - application/json - Test-Request-Attempt: - - "0" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza?api-version=2022-01-20-preview - method: GET - response: - body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza'' - under resource group ''asotest-rg-ljqsjm'' was not found. For more details please - go to https://aka.ms/ARMResourceNotFoundFix"}}' - headers: - Cache-Control: - - no-cache - Content-Length: - - "256" - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - X-Content-Type-Options: - - nosniff - X-Ms-Failure-Cause: - - gateway - status: 404 Not Found - code: 404 - duration: "" -- request: - body: '{"location":"eastus","name":"asotest-postgresql-tvxiza","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"13"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' - form: {} - headers: - Accept: - - application/json - Content-Length: - - "262" - Content-Type: - - application/json - Test-Request-Attempt: - - "0" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza?api-version=2022-01-20-preview - method: PUT - response: - body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' - headers: - Azure-Asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/eastus/azureAsyncOperation/6f0fb05d-9f8c-4f67-b23d-93c566f23fa3?api-version=2022-01-20-preview - Cache-Control: - - no-cache - Content-Length: - - "88" - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/eastus/operationResults/6f0fb05d-9f8c-4f67-b23d-93c566f23fa3?api-version=2022-01-20-preview - Pragma: - - no-cache - Retry-After: - - "60" - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - X-Content-Type-Options: - - nosniff - status: 202 Accepted - code: 202 - duration: "" -- request: - body: "" - form: {} - headers: - Test-Request-Attempt: - - "0" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/eastus/azureAsyncOperation/6f0fb05d-9f8c-4f67-b23d-93c566f23fa3?api-version=2022-01-20-preview - method: GET - response: - body: '{"name":"6f0fb05d-9f8c-4f67-b23d-93c566f23fa3","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' - headers: - Cache-Control: - - no-cache - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Retry-After: - - "60" - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - Vary: - - Accept-Encoding - X-Content-Type-Options: - - nosniff - status: 200 OK - code: 200 - duration: "" -- request: - body: "" - form: {} - headers: - Test-Request-Attempt: - - "1" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/eastus/azureAsyncOperation/6f0fb05d-9f8c-4f67-b23d-93c566f23fa3?api-version=2022-01-20-preview - method: GET - response: - body: '{"name":"6f0fb05d-9f8c-4f67-b23d-93c566f23fa3","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' - headers: - Cache-Control: - - no-cache - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Retry-After: - - "60" - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - Vary: - - Accept-Encoding - X-Content-Type-Options: - - nosniff - status: 200 OK - code: 200 - duration: "" -- request: - body: "" - form: {} - headers: - Test-Request-Attempt: - - "2" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/eastus/azureAsyncOperation/6f0fb05d-9f8c-4f67-b23d-93c566f23fa3?api-version=2022-01-20-preview - method: GET - response: - body: '{"name":"6f0fb05d-9f8c-4f67-b23d-93c566f23fa3","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' - headers: - Cache-Control: - - no-cache - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Retry-After: - - "60" - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - Vary: - - Accept-Encoding - X-Content-Type-Options: - - nosniff - status: 200 OK - code: 200 - duration: "" -- request: - body: "" - form: {} - headers: - Test-Request-Attempt: - - "3" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/eastus/azureAsyncOperation/6f0fb05d-9f8c-4f67-b23d-93c566f23fa3?api-version=2022-01-20-preview - method: GET - response: - body: '{"name":"6f0fb05d-9f8c-4f67-b23d-93c566f23fa3","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' - headers: - Cache-Control: - - no-cache - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Retry-After: - - "60" - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - Vary: - - Accept-Encoding - X-Content-Type-Options: - - nosniff - status: 200 OK - code: 200 - duration: "" -- request: - body: "" - form: {} - headers: - Test-Request-Attempt: - - "4" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/eastus/azureAsyncOperation/6f0fb05d-9f8c-4f67-b23d-93c566f23fa3?api-version=2022-01-20-preview - method: GET - response: - body: '{"name":"6f0fb05d-9f8c-4f67-b23d-93c566f23fa3","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' - headers: - Cache-Control: - - no-cache - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Retry-After: - - "60" - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - Vary: - - Accept-Encoding - X-Content-Type-Options: - - nosniff - status: 200 OK - code: 200 - duration: "" -- request: - body: "" - form: {} - headers: - Test-Request-Attempt: - - "5" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/eastus/azureAsyncOperation/6f0fb05d-9f8c-4f67-b23d-93c566f23fa3?api-version=2022-01-20-preview - method: GET - response: - body: '{"name":"6f0fb05d-9f8c-4f67-b23d-93c566f23fa3","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' - headers: - Cache-Control: - - no-cache - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Retry-After: - - "60" - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - Vary: - - Accept-Encoding - X-Content-Type-Options: - - nosniff - status: 200 OK - code: 200 - duration: "" -- request: - body: "" - form: {} - headers: - Test-Request-Attempt: - - "6" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/eastus/azureAsyncOperation/6f0fb05d-9f8c-4f67-b23d-93c566f23fa3?api-version=2022-01-20-preview - method: GET - response: - body: '{"name":"6f0fb05d-9f8c-4f67-b23d-93c566f23fa3","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' - headers: - Cache-Control: - - no-cache - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Retry-After: - - "60" - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - Vary: - - Accept-Encoding - X-Content-Type-Options: - - nosniff - status: 200 OK - code: 200 - duration: "" -- request: - body: "" - form: {} - headers: - Test-Request-Attempt: - - "1" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza?api-version=2022-01-20-preview - method: GET - response: - body: '{"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"},"properties":{"fullyQualifiedDomainName":"asotest-postgresql-tvxiza.postgres.database.azure.com","version":"13","minorVersion":"9","administratorLogin":"myadmin","state":"Ready","availabilityZone":"1","storage":{"storageSizeGB":128},"backup":{"backupRetentionDays":7,"geoRedundantBackup":"Disabled","earliestRestoreDate":"2023-02-03T04:27:52.6290724+00:00"},"network":{"publicNetworkAccess":"Enabled"},"highAvailability":{"mode":"Disabled","state":"NotEnabled"},"maintenanceWindow":{"customWindow":"Disabled","dayOfWeek":0,"startHour":0,"startMinute":0}},"location":"East - US","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza","name":"asotest-postgresql-tvxiza","type":"Microsoft.DBforPostgreSQL/flexibleServers"}' - headers: - Cache-Control: - - no-cache - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - Vary: - - Accept-Encoding - X-Content-Type-Options: - - nosniff - status: 200 OK - code: 200 - duration: "" -- request: - body: "" - form: {} - headers: - Accept: - - application/json - Test-Request-Attempt: - - "2" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza?api-version=2022-01-20-preview - method: GET - response: - body: '{"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"},"properties":{"fullyQualifiedDomainName":"asotest-postgresql-tvxiza.postgres.database.azure.com","version":"13","minorVersion":"9","administratorLogin":"myadmin","state":"Ready","availabilityZone":"1","storage":{"storageSizeGB":128},"backup":{"backupRetentionDays":7,"geoRedundantBackup":"Disabled","earliestRestoreDate":"2023-02-03T04:27:52.6290724+00:00"},"network":{"publicNetworkAccess":"Enabled"},"highAvailability":{"mode":"Disabled","state":"NotEnabled"},"maintenanceWindow":{"customWindow":"Disabled","dayOfWeek":0,"startHour":0,"startMinute":0}},"location":"East - US","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza","name":"asotest-postgresql-tvxiza","type":"Microsoft.DBforPostgreSQL/flexibleServers"}' - headers: - Cache-Control: - - no-cache - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - Vary: - - Accept-Encoding - X-Content-Type-Options: - - nosniff - status: 200 OK - code: 200 - duration: "" -- request: - body: "" - form: {} - headers: - Accept: - - application/json - Test-Request-Attempt: - - "3" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza?api-version=2022-01-20-preview - method: GET - response: - body: '{"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"},"properties":{"fullyQualifiedDomainName":"asotest-postgresql-tvxiza.postgres.database.azure.com","version":"13","minorVersion":"9","administratorLogin":"myadmin","state":"Ready","availabilityZone":"1","storage":{"storageSizeGB":128},"backup":{"backupRetentionDays":7,"geoRedundantBackup":"Disabled","earliestRestoreDate":"2023-02-03T04:27:52.6290724+00:00"},"network":{"publicNetworkAccess":"Enabled"},"highAvailability":{"mode":"Disabled","state":"NotEnabled"},"maintenanceWindow":{"customWindow":"Disabled","dayOfWeek":0,"startHour":0,"startMinute":0}},"location":"East - US","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza","name":"asotest-postgresql-tvxiza","type":"Microsoft.DBforPostgreSQL/flexibleServers"}' - headers: - Cache-Control: - - no-cache - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - Vary: - - Accept-Encoding - X-Content-Type-Options: - - nosniff - status: 200 OK - code: 200 - duration: "" -- request: - body: '{"location":"eastus","name":"asotest-postgresql-tvxiza","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","maintenanceWindow":{"customWindow":"enabled","dayOfWeek":5},"storage":{"storageSizeGB":128},"version":"13"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' - form: {} - headers: - Accept: - - application/json - Content-Length: - - "323" - Content-Type: - - application/json - Test-Request-Attempt: - - "1" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza?api-version=2022-01-20-preview - method: PUT - response: - body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' - headers: - Azure-Asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/eastus/azureAsyncOperation/ab746eb1-192f-4588-ba83-ffafd909229a?api-version=2022-01-20-preview - Cache-Control: - - no-cache - Content-Length: - - "88" - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/eastus/operationResults/ab746eb1-192f-4588-ba83-ffafd909229a?api-version=2022-01-20-preview - Pragma: - - no-cache - Retry-After: - - "60" - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - X-Content-Type-Options: - - nosniff - status: 202 Accepted - code: 202 - duration: "" -- request: - body: "" - form: {} - headers: - Test-Request-Attempt: - - "0" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/eastus/azureAsyncOperation/ab746eb1-192f-4588-ba83-ffafd909229a?api-version=2022-01-20-preview - method: GET - response: - body: '{"name":"ab746eb1-192f-4588-ba83-ffafd909229a","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' - headers: - Cache-Control: - - no-cache - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Retry-After: - - "60" - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - Vary: - - Accept-Encoding - X-Content-Type-Options: - - nosniff - status: 200 OK - code: 200 - duration: "" -- request: - body: "" - form: {} - headers: - Test-Request-Attempt: - - "1" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/eastus/azureAsyncOperation/ab746eb1-192f-4588-ba83-ffafd909229a?api-version=2022-01-20-preview - method: GET - response: - body: '{"name":"ab746eb1-192f-4588-ba83-ffafd909229a","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' - headers: - Cache-Control: - - no-cache - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Retry-After: - - "60" - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - Vary: - - Accept-Encoding - X-Content-Type-Options: - - nosniff - status: 200 OK - code: 200 - duration: "" -- request: - body: "" - form: {} - headers: - Test-Request-Attempt: - - "4" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza?api-version=2022-01-20-preview - method: GET - response: - body: '{"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"},"properties":{"fullyQualifiedDomainName":"asotest-postgresql-tvxiza.postgres.database.azure.com","version":"13","minorVersion":"9","administratorLogin":"myadmin","state":"Ready","availabilityZone":"1","storage":{"storageSizeGB":128},"backup":{"backupRetentionDays":7,"geoRedundantBackup":"Disabled","earliestRestoreDate":"2023-02-03T04:34:12.9228679+00:00"},"network":{"publicNetworkAccess":"Enabled"},"highAvailability":{"mode":"Disabled","state":"NotEnabled"},"maintenanceWindow":{"customWindow":"Enabled","dayOfWeek":5,"startHour":0,"startMinute":0}},"location":"East - US","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza","name":"asotest-postgresql-tvxiza","type":"Microsoft.DBforPostgreSQL/flexibleServers"}' - headers: - Cache-Control: - - no-cache - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - Vary: - - Accept-Encoding - X-Content-Type-Options: - - nosniff - status: 200 OK - code: 200 - duration: "" -- request: - body: "" - form: {} - headers: - Accept: - - application/json - Test-Request-Attempt: - - "5" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza?api-version=2022-01-20-preview - method: GET - response: - body: '{"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"},"properties":{"fullyQualifiedDomainName":"asotest-postgresql-tvxiza.postgres.database.azure.com","version":"13","minorVersion":"9","administratorLogin":"myadmin","state":"Ready","availabilityZone":"1","storage":{"storageSizeGB":128},"backup":{"backupRetentionDays":7,"geoRedundantBackup":"Disabled","earliestRestoreDate":"2023-02-03T04:34:12.9228679+00:00"},"network":{"publicNetworkAccess":"Enabled"},"highAvailability":{"mode":"Disabled","state":"NotEnabled"},"maintenanceWindow":{"customWindow":"Enabled","dayOfWeek":5,"startHour":0,"startMinute":0}},"location":"East - US","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza","name":"asotest-postgresql-tvxiza","type":"Microsoft.DBforPostgreSQL/flexibleServers"}' - headers: - Cache-Control: - - no-cache - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - Vary: - - Accept-Encoding - X-Content-Type-Options: - - nosniff - status: 200 OK - code: 200 - duration: "" -- request: - body: "" - form: {} - headers: - Accept: - - application/json - Test-Request-Attempt: - - "6" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza?api-version=2022-01-20-preview - method: GET - response: - body: '{"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"},"properties":{"fullyQualifiedDomainName":"asotest-postgresql-tvxiza.postgres.database.azure.com","version":"13","minorVersion":"9","administratorLogin":"myadmin","state":"Ready","availabilityZone":"1","storage":{"storageSizeGB":128},"backup":{"backupRetentionDays":7,"geoRedundantBackup":"Disabled","earliestRestoreDate":"2023-02-03T04:34:12.9228679+00:00"},"network":{"publicNetworkAccess":"Enabled"},"highAvailability":{"mode":"Disabled","state":"NotEnabled"},"maintenanceWindow":{"customWindow":"Enabled","dayOfWeek":5,"startHour":0,"startMinute":0}},"location":"East - US","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza","name":"asotest-postgresql-tvxiza","type":"Microsoft.DBforPostgreSQL/flexibleServers"}' - headers: - Cache-Control: - - no-cache - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - Vary: - - Accept-Encoding - X-Content-Type-Options: - - nosniff - status: 200 OK - code: 200 - duration: "" -- request: - body: '{"name":"pgaudit.log","properties":{"source":"user-override","value":"READ"}}' - form: {} - headers: - Accept: - - application/json - Content-Length: - - "77" - Content-Type: - - application/json - Test-Request-Attempt: - - "0" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza/configurations/pgaudit.log?api-version=2022-01-20-preview - method: PUT - response: - body: '{"operation":"UpdateConfigurationManagementOperation","startTime":"2001-02-03T04:05:06Z"}' - headers: - Azure-Asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/eastus/azureAsyncOperation/66acc523-fee8-431c-8f7b-934af48ceda7?api-version=2022-01-20-preview - Cache-Control: - - no-cache - Content-Length: - - "93" - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/eastus/operationResults/66acc523-fee8-431c-8f7b-934af48ceda7?api-version=2022-01-20-preview - Pragma: - - no-cache - Retry-After: - - "10" - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - X-Content-Type-Options: - - nosniff - status: 202 Accepted - code: 202 - duration: "" -- request: - body: "" - form: {} - headers: - Accept: - - application/json - Test-Request-Attempt: - - "0" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza/firewallRules/asotest-fwrule-vqfpjt?api-version=2022-01-20-preview - method: GET - response: - body: '{"error":{"code":"ResourceNotFound","message":"The specified resource asotest-fwrule-vqfpjt - was not found."}}' - headers: - Cache-Control: - - no-cache - Content-Length: - - "109" - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - X-Content-Type-Options: - - nosniff - status: 404 Not Found - code: 404 - duration: "" -- request: - body: "" - form: {} - headers: - Accept: - - application/json - Test-Request-Attempt: - - "0" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza/databases/asotest-db-zuoeiy?api-version=2022-01-20-preview - method: GET - response: - body: '{"error":{"code":"ResourceNotFound","message":"The requested resource of - type ''Microsoft.DBforPostgreSQL/flexibleServers/databases'' with name ''asotest-db-zuoeiy'' - was not found."}}' - headers: - Cache-Control: - - no-cache - Content-Length: - - "179" - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - X-Content-Type-Options: - - nosniff - status: 404 Not Found - code: 404 - duration: "" -- request: - body: '{"name":"asotest-fwrule-vqfpjt","properties":{"endIpAddress":"1.2.3.4","startIpAddress":"1.2.3.4"}}' - form: {} - headers: - Accept: - - application/json - Content-Length: - - "99" - Content-Type: - - application/json - Test-Request-Attempt: - - "0" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza/firewallRules/asotest-fwrule-vqfpjt?api-version=2022-01-20-preview - method: PUT - response: - body: '{"operation":"UpsertServerFirewallRulesManagementOperation","startTime":"2001-02-03T04:05:06Z"}' - headers: - Azure-Asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/eastus/azureAsyncOperation/99ef58b3-4a14-4ccc-aec4-ff7e183786de?api-version=2022-01-20-preview - Cache-Control: - - no-cache - Content-Length: - - "99" - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/eastus/operationResults/99ef58b3-4a14-4ccc-aec4-ff7e183786de?api-version=2022-01-20-preview - Pragma: - - no-cache - Retry-After: - - "60" - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - X-Content-Type-Options: - - nosniff - status: 202 Accepted - code: 202 - duration: "" -- request: - body: '{"location":"eastus","name":"asotest-postgresql-tvxiza","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","maintenanceWindow":{"customWindow":"enabled","dayOfWeek":5},"storage":{"storageSizeGB":128},"version":"13"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' - form: {} - headers: - Accept: - - application/json - Content-Length: - - "323" - Content-Type: - - application/json - Test-Request-Attempt: - - "2" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza?api-version=2022-01-20-preview - method: PUT - response: - body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' - headers: - Azure-Asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/eastus/azureAsyncOperation/4a38b446-9892-45b0-9e85-3a34ac1ab073?api-version=2022-01-20-preview - Cache-Control: - - no-cache - Content-Length: - - "88" - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/eastus/operationResults/4a38b446-9892-45b0-9e85-3a34ac1ab073?api-version=2022-01-20-preview - Pragma: - - no-cache - Retry-After: - - "60" - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - X-Content-Type-Options: - - nosniff - status: 202 Accepted - code: 202 - duration: "" -- request: - body: '{"name":"asotest-db-zuoeiy","properties":{"charset":"utf8"}}' - form: {} - headers: - Accept: - - application/json - Content-Length: - - "60" - Content-Type: - - application/json - Test-Request-Attempt: - - "0" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza/databases/asotest-db-zuoeiy?api-version=2022-01-20-preview - method: PUT - response: - body: '{"operation":"UpsertServerDatabaseManagementOperation","startTime":"2001-02-03T04:05:06Z"}' - headers: - Azure-Asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/eastus/azureAsyncOperation/a31b4373-325f-4a20-8b6e-f28d29c84a84?api-version=2022-01-20-preview - Cache-Control: - - no-cache - Content-Length: - - "93" - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/eastus/operationResults/a31b4373-325f-4a20-8b6e-f28d29c84a84?api-version=2022-01-20-preview - Pragma: - - no-cache - Retry-After: - - "10" - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - X-Content-Type-Options: - - nosniff - status: 202 Accepted - code: 202 - duration: "" -- request: - body: "" - form: {} - headers: - Test-Request-Attempt: - - "0" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/eastus/azureAsyncOperation/66acc523-fee8-431c-8f7b-934af48ceda7?api-version=2022-01-20-preview - method: GET - response: - body: '{"name":"66acc523-fee8-431c-8f7b-934af48ceda7","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' - headers: - Cache-Control: - - no-cache - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Retry-After: - - "10" - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - Vary: - - Accept-Encoding - X-Content-Type-Options: - - nosniff - status: 200 OK - code: 200 - duration: "" -- request: - body: "" - form: {} - headers: - Test-Request-Attempt: - - "0" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/eastus/azureAsyncOperation/99ef58b3-4a14-4ccc-aec4-ff7e183786de?api-version=2022-01-20-preview - method: GET - response: - body: '{"name":"99ef58b3-4a14-4ccc-aec4-ff7e183786de","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' - headers: - Cache-Control: - - no-cache - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Retry-After: - - "60" - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - Vary: - - Accept-Encoding - X-Content-Type-Options: - - nosniff - status: 200 OK - code: 200 - duration: "" -- request: - body: "" - form: {} - headers: - Test-Request-Attempt: - - "0" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza/configurations/pgaudit.log?api-version=2022-01-20-preview - method: GET - response: - body: '{"properties":{"value":"READ","description":"Specifies which classes of - statements will be logged by session audit logging.","defaultValue":"none","dataType":"Set","allowedValues":"none,read,write,function,role,ddl,misc,all","source":"user-override","isDynamicConfig":true,"isReadOnly":false,"isConfigPendingRestart":false,"documentationLink":"https://github.com/pgaudit/pgaudit/blob/master/README.md"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza/configurations/pgaudit.log","name":"pgaudit.log","type":"Microsoft.DBforPostgreSQL/flexibleServers/configurations"}' - headers: - Cache-Control: - - no-cache - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - Vary: - - Accept-Encoding - X-Content-Type-Options: - - nosniff - status: 200 OK - code: 200 - duration: "" -- request: - body: "" - form: {} - headers: - Test-Request-Attempt: - - "0" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/eastus/azureAsyncOperation/4a38b446-9892-45b0-9e85-3a34ac1ab073?api-version=2022-01-20-preview - method: GET - response: - body: '{"name":"4a38b446-9892-45b0-9e85-3a34ac1ab073","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' - headers: - Cache-Control: - - no-cache - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Retry-After: - - "60" - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - Vary: - - Accept-Encoding - X-Content-Type-Options: - - nosniff - status: 200 OK - code: 200 - duration: "" -- request: - body: "" - form: {} - headers: - Test-Request-Attempt: - - "0" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/eastus/azureAsyncOperation/a31b4373-325f-4a20-8b6e-f28d29c84a84?api-version=2022-01-20-preview - method: GET - response: - body: '{"name":"a31b4373-325f-4a20-8b6e-f28d29c84a84","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' - headers: - Cache-Control: - - no-cache - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Retry-After: - - "10" - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - Vary: - - Accept-Encoding - X-Content-Type-Options: - - nosniff - status: 200 OK - code: 200 - duration: "" -- request: - body: "" - form: {} - headers: - Accept: - - application/json - Test-Request-Attempt: - - "1" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza/configurations/pgaudit.log?api-version=2022-01-20-preview - method: GET - response: - body: '{"properties":{"value":"READ","description":"Specifies which classes of - statements will be logged by session audit logging.","defaultValue":"none","dataType":"Set","allowedValues":"none,read,write,function,role,ddl,misc,all","source":"user-override","isDynamicConfig":true,"isReadOnly":false,"isConfigPendingRestart":false,"documentationLink":"https://github.com/pgaudit/pgaudit/blob/master/README.md"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza/configurations/pgaudit.log","name":"pgaudit.log","type":"Microsoft.DBforPostgreSQL/flexibleServers/configurations"}' - headers: - Cache-Control: - - no-cache - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - Vary: - - Accept-Encoding - X-Content-Type-Options: - - nosniff - status: 200 OK - code: 200 - duration: "" -- request: - body: "" - form: {} - headers: - Test-Request-Attempt: - - "1" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza/databases/asotest-db-zuoeiy?api-version=2022-01-20-preview - method: GET - response: - body: '{"properties":{"charset":"UTF8","collation":"en_US.utf8"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza/databases/asotest-db-zuoeiy","name":"asotest-db-zuoeiy","type":"Microsoft.DBforPostgreSQL/flexibleServers/databases"}' - headers: - Cache-Control: - - no-cache - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - Vary: - - Accept-Encoding - X-Content-Type-Options: - - nosniff - status: 200 OK - code: 200 - duration: "" -- request: - body: "" - form: {} - headers: - Accept: - - application/json - Test-Request-Attempt: - - "2" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza/databases/asotest-db-zuoeiy?api-version=2022-01-20-preview - method: GET - response: - body: '{"properties":{"charset":"UTF8","collation":"en_US.utf8"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza/databases/asotest-db-zuoeiy","name":"asotest-db-zuoeiy","type":"Microsoft.DBforPostgreSQL/flexibleServers/databases"}' - headers: - Cache-Control: - - no-cache - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - Vary: - - Accept-Encoding - X-Content-Type-Options: - - nosniff - status: 200 OK - code: 200 - duration: "" -- request: - body: "" - form: {} - headers: - Accept: - - application/json - Test-Request-Attempt: - - "0" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza/databases/asotest-db-zuoeiy?api-version=2022-01-20-preview - method: DELETE - response: - body: '{"operation":"DropServerDatabaseManagementOperation","startTime":"2001-02-03T04:05:06Z"}' - headers: - Azure-Asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/eastus/azureAsyncOperation/493403b7-b9e6-4a19-a15b-7da5fe3b35ff?api-version=2022-01-20-preview - Cache-Control: - - no-cache - Content-Length: - - "92" - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/eastus/operationResults/493403b7-b9e6-4a19-a15b-7da5fe3b35ff?api-version=2022-01-20-preview - Pragma: - - no-cache - Retry-After: - - "10" - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - X-Content-Type-Options: - - nosniff - status: 202 Accepted - code: 202 - duration: "" -- request: - body: "" - form: {} - headers: - Test-Request-Attempt: - - "0" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/eastus/azureAsyncOperation/493403b7-b9e6-4a19-a15b-7da5fe3b35ff?api-version=2022-01-20-preview - method: GET - response: - body: '{"name":"493403b7-b9e6-4a19-a15b-7da5fe3b35ff","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' - headers: - Cache-Control: - - no-cache - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Retry-After: - - "10" - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - Vary: - - Accept-Encoding - X-Content-Type-Options: - - nosniff - status: 200 OK - code: 200 - duration: "" -- request: - body: "" - form: {} - headers: - Test-Request-Attempt: - - "1" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/eastus/azureAsyncOperation/99ef58b3-4a14-4ccc-aec4-ff7e183786de?api-version=2022-01-20-preview - method: GET - response: - body: '{"name":"99ef58b3-4a14-4ccc-aec4-ff7e183786de","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' - headers: - Cache-Control: - - no-cache - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Retry-After: - - "60" - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - Vary: - - Accept-Encoding - X-Content-Type-Options: - - nosniff - status: 200 OK - code: 200 - duration: "" -- request: - body: "" - form: {} - headers: - Test-Request-Attempt: - - "1" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/eastus/azureAsyncOperation/4a38b446-9892-45b0-9e85-3a34ac1ab073?api-version=2022-01-20-preview - method: GET - response: - body: '{"name":"4a38b446-9892-45b0-9e85-3a34ac1ab073","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' - headers: - Cache-Control: - - no-cache - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Retry-After: - - "60" - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - Vary: - - Accept-Encoding - X-Content-Type-Options: - - nosniff - status: 200 OK - code: 200 - duration: "" -- request: - body: "" - form: {} - headers: - Test-Request-Attempt: - - "7" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza?api-version=2022-01-20-preview - method: GET - response: - body: '{"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"},"properties":{"fullyQualifiedDomainName":"asotest-postgresql-tvxiza.postgres.database.azure.com","version":"13","minorVersion":"9","administratorLogin":"myadmin","state":"Ready","availabilityZone":"1","storage":{"storageSizeGB":128},"backup":{"backupRetentionDays":7,"geoRedundantBackup":"Disabled","earliestRestoreDate":"2023-02-03T04:34:12.9228679+00:00"},"network":{"publicNetworkAccess":"Enabled"},"highAvailability":{"mode":"Disabled","state":"NotEnabled"},"maintenanceWindow":{"customWindow":"Enabled","dayOfWeek":5,"startHour":0,"startMinute":0}},"location":"East - US","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza","name":"asotest-postgresql-tvxiza","type":"Microsoft.DBforPostgreSQL/flexibleServers"}' - headers: - Cache-Control: - - no-cache - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - Vary: - - Accept-Encoding - X-Content-Type-Options: - - nosniff - status: 200 OK - code: 200 - duration: "" -- request: - body: "" - form: {} - headers: - Test-Request-Attempt: - - "1" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza/firewallRules/asotest-fwrule-vqfpjt?api-version=2022-01-20-preview - method: GET - response: - body: '{"properties":{"startIpAddress":"1.2.3.4","endIpAddress":"1.2.3.4"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza/firewallRules/asotest-fwrule-vqfpjt","name":"asotest-fwrule-vqfpjt","type":"Microsoft.DBforPostgreSQL/flexibleServers/firewallRules"}' - headers: - Cache-Control: - - no-cache - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - Vary: - - Accept-Encoding - X-Content-Type-Options: - - nosniff - status: 200 OK - code: 200 - duration: "" -- request: - body: "" - form: {} - headers: - Accept: - - application/json - Test-Request-Attempt: - - "2" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza/firewallRules/asotest-fwrule-vqfpjt?api-version=2022-01-20-preview - method: GET - response: - body: '{"properties":{"startIpAddress":"1.2.3.4","endIpAddress":"1.2.3.4"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza/firewallRules/asotest-fwrule-vqfpjt","name":"asotest-fwrule-vqfpjt","type":"Microsoft.DBforPostgreSQL/flexibleServers/firewallRules"}' - headers: - Cache-Control: - - no-cache - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - Vary: - - Accept-Encoding - X-Content-Type-Options: - - nosniff - status: 200 OK - code: 200 - duration: "" -- request: - body: "" - form: {} - headers: - Accept: - - application/json - Test-Request-Attempt: - - "8" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza?api-version=2022-01-20-preview - method: GET - response: - body: '{"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"},"properties":{"fullyQualifiedDomainName":"asotest-postgresql-tvxiza.postgres.database.azure.com","version":"13","minorVersion":"9","administratorLogin":"myadmin","state":"Ready","availabilityZone":"1","storage":{"storageSizeGB":128},"backup":{"backupRetentionDays":7,"geoRedundantBackup":"Disabled","earliestRestoreDate":"2023-02-03T04:34:12.9228679+00:00"},"network":{"publicNetworkAccess":"Enabled"},"highAvailability":{"mode":"Disabled","state":"NotEnabled"},"maintenanceWindow":{"customWindow":"Enabled","dayOfWeek":5,"startHour":0,"startMinute":0}},"location":"East - US","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza","name":"asotest-postgresql-tvxiza","type":"Microsoft.DBforPostgreSQL/flexibleServers"}' - headers: - Cache-Control: - - no-cache - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - Vary: - - Accept-Encoding - X-Content-Type-Options: - - nosniff - status: 200 OK - code: 200 - duration: "" -- request: - body: "" - form: {} - headers: - Accept: - - application/json - Test-Request-Attempt: - - "0" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza/firewallRules/asotest-fwrule-vqfpjt?api-version=2022-01-20-preview - method: DELETE - response: - body: '{"operation":"DropServerFirewallRulesManagementOperation","startTime":"2001-02-03T04:05:06Z"}' - headers: - Azure-Asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/eastus/azureAsyncOperation/ac87135f-dda3-4418-b33f-ae1b2d67db8f?api-version=2022-01-20-preview - Cache-Control: - - no-cache - Content-Length: - - "97" - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/eastus/operationResults/ac87135f-dda3-4418-b33f-ae1b2d67db8f?api-version=2022-01-20-preview - Pragma: - - no-cache - Retry-After: - - "60" - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - X-Content-Type-Options: - - nosniff - status: 202 Accepted - code: 202 - duration: "" -- request: - body: "" - form: {} - headers: - Test-Request-Attempt: - - "0" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/eastus/azureAsyncOperation/ac87135f-dda3-4418-b33f-ae1b2d67db8f?api-version=2022-01-20-preview - method: GET - response: - body: '{"name":"ac87135f-dda3-4418-b33f-ae1b2d67db8f","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' - headers: - Cache-Control: - - no-cache - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Retry-After: - - "60" - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - Vary: - - Accept-Encoding - X-Content-Type-Options: - - nosniff - status: 200 OK - code: 200 - duration: "" -- request: - body: "" - form: {} - headers: - Accept: - - application/json - Test-Request-Attempt: - - "0" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza?api-version=2022-01-20-preview - method: DELETE - response: - body: '{"operation":"DropServerManagementOperation","startTime":"2001-02-03T04:05:06Z"}' - headers: - Azure-Asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/East%20US/azureAsyncOperation/c7ba2ac4-9e7d-427e-979e-39246b6170de?api-version=2022-01-20-preview - Cache-Control: - - no-cache - Content-Length: - - "84" - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/East%20US/operationResults/c7ba2ac4-9e7d-427e-979e-39246b6170de?api-version=2022-01-20-preview - Pragma: - - no-cache - Retry-After: - - "15" - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - X-Content-Type-Options: - - nosniff - status: 202 Accepted - code: 202 - duration: "" -- request: - body: "" - form: {} - headers: - Test-Request-Attempt: - - "0" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/East%20US/azureAsyncOperation/c7ba2ac4-9e7d-427e-979e-39246b6170de?api-version=2022-01-20-preview - method: GET - response: - body: '{"name":"c7ba2ac4-9e7d-427e-979e-39246b6170de","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' - headers: - Cache-Control: - - no-cache - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Retry-After: - - "15" - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - Vary: - - Accept-Encoding - X-Content-Type-Options: - - nosniff - status: 200 OK - code: 200 - duration: "" -- request: - body: "" - form: {} - headers: - Test-Request-Attempt: - - "1" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/East%20US/azureAsyncOperation/c7ba2ac4-9e7d-427e-979e-39246b6170de?api-version=2022-01-20-preview - method: GET - response: - body: '{"name":"c7ba2ac4-9e7d-427e-979e-39246b6170de","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' - headers: - Cache-Control: - - no-cache - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Retry-After: - - "15" - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - Vary: - - Accept-Encoding - X-Content-Type-Options: - - nosniff - status: 200 OK - code: 200 - duration: "" -- request: - body: "" - form: {} - headers: - Test-Request-Attempt: - - "2" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/East%20US/azureAsyncOperation/c7ba2ac4-9e7d-427e-979e-39246b6170de?api-version=2022-01-20-preview - method: GET - response: - body: '{"name":"c7ba2ac4-9e7d-427e-979e-39246b6170de","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' - headers: - Cache-Control: - - no-cache - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Retry-After: - - "15" - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - Vary: - - Accept-Encoding - X-Content-Type-Options: - - nosniff - status: 200 OK - code: 200 - duration: "" -- request: - body: "" - form: {} - headers: - Accept: - - application/json - Test-Request-Attempt: - - "9" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza?api-version=2022-01-20-preview - method: GET - response: - body: '{"error":{"code":"ResourceNotFound","message":"The requested resource of - type ''Microsoft.DBforPostgreSQL/flexibleServers'' with name ''asotest-postgresql-tvxiza'' - was not found."}}' - headers: - Cache-Control: - - no-cache - Content-Length: - - "177" - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Server: - - Microsoft-HTTPAPI/2.0 - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - X-Content-Type-Options: - - nosniff - status: 404 Not Found - code: 404 - duration: "" -- request: - body: "" - form: {} - headers: - Accept: - - application/json - Test-Request-Attempt: - - "0" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm?api-version=2020-06-01 - method: DELETE - response: - body: "" - headers: - Cache-Control: - - no-cache - Content-Length: - - "0" - Expires: - - "-1" - Location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMSlFTSk0tV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01 - Pragma: - - no-cache - Retry-After: - - "15" - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - X-Content-Type-Options: - - nosniff - status: 202 Accepted - code: 202 - duration: "" -- request: - body: "" - form: {} - headers: - Test-Request-Attempt: - - "0" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRMSlFTSk0tV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01 - method: GET - response: - body: "" - headers: - Cache-Control: - - no-cache - Content-Length: - - "0" - Expires: - - "-1" - Pragma: - - no-cache - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - X-Content-Type-Options: - - nosniff - status: 200 OK - code: 200 - duration: "" -- request: - body: "" - form: {} - headers: - Accept: - - application/json - Test-Request-Attempt: - - "0" - url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-ljqsjm/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza/configurations/pgaudit.log?api-version=2022-01-20-preview - method: DELETE - response: - body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-tvxiza'' - under resource group ''asotest-rg-ljqsjm'' was not found. For more details please - go to https://aka.ms/ARMResourceNotFoundFix"}}' - headers: - Cache-Control: - - no-cache - Content-Length: - - "256" - Content-Type: - - application/json; charset=utf-8 - Expires: - - "-1" - Pragma: - - no-cache - Strict-Transport-Security: - - max-age=31536000; includeSubDomains - X-Content-Type-Options: - - nosniff - X-Ms-Failure-Cause: - - gateway - status: 404 Not Found - code: 404 - duration: "" diff --git a/v2/internal/controllers/recordings/Test_DBForPostgreSQL_FlexibleServer_20230601Preview_CRUD.yaml b/v2/internal/controllers/recordings/Test_DBForPostgreSQL_FlexibleServer_20230601Preview_CRUD.yaml new file mode 100644 index 00000000000..9c0b7fc3eea --- /dev/null +++ b/v2/internal/controllers/recordings/Test_DBForPostgreSQL_FlexibleServer_20230601Preview_CRUD.yaml @@ -0,0 +1,8283 @@ +--- +version: 1 +interactions: +- request: + body: '{"location":"uksouth","name":"asotest-rg-vlodao","tags":{"CreatedAt":"2001-02-03T04:05:06Z"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "93" + Content-Type: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao?api-version=2020-06-01 + method: PUT + response: + body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao","name":"asotest-rg-vlodao","type":"Microsoft.Resources/resourceGroups","location":"uksouth","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-Content-Type-Options: + - nosniff + status: 201 Created + code: 201 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao?api-version=2020-06-01 + method: GET + response: + body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao","name":"asotest-rg-vlodao","type":"Microsoft.Resources/resourceGroups","location":"uksouth","tags":{"CreatedAt":"2001-02-03T04:05:06Z"},"properties":{"provisioningState":"Succeeded"}}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/cb88516a-22df-4a84-a1a1-66dbf6bff0cb?api-version=2023-06-01-preview&t=638400892269306560&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=kY0m6_ynvUacF7vV2rDrX8wBnjo-oLtAq9Qm8bzkw7VwwcnSO-jSeGCJuctlpWVCa9QCHlqMyAvaFlPl0a7bkNGf8VW8zZB9HMMJiUx3TgAVC3sIJtTMSnZ-xyQM9QoBWQ20ciJwSYztoepgRxziaMR0y0WS59n3ulfxG9ROGlPIybMMRiK8FEBvzbbg9Z6hTaUAPMkkrwppuB3Nyup6eDrvOccKYRM90MoHWKgtYLyDPZHeRqJWoyeR75oj_Jev4AbWq-dtKyXju0A5yFZakcUJ-RJeKLKmn1f8mkiwEHuWQ5USpnt6AgMRf1BxeQ-Oze3SRPLtrXvQQHEWg3Zgug&h=x7o80GGrdCwZlqbv510b9BORbmB85B02FTfJoEZhGZQ + Cache-Control: + - no-cache + Content-Length: + - "88" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/cb88516a-22df-4a84-a1a1-66dbf6bff0cb?api-version=2023-06-01-preview&t=638400892269462828&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=GZt6EscsMEtTJiBsLbKutUc8jSa-JxbJT4RTDn70kLmUuq5tQI73CJoL8V_EYeYYEsKIIme9vDk-1TcrUdEU33jlyoDu3cmzRPcqzpKPSIZ--BYQ5dUaWnAH54JzxJ9vAAv1alDzB4_IJuAgllBAbShHsLuAw__eH3QeKzN0mpyJMI_HGGrQ9Lb1GJciupzNggdxi4STsPFc_0WS1H3VcuQolKOjpZve7JPEl-33GofyzW-VTj_7jmE1-QL-VW8UiD6iDPQzfK07_0HuIVKjz0aPlNRS9M1f0oam1W9x9oTCBnzO1HmA8BHctFEmBQbs9iyN9czrXfp79sazPvJCfg&h=WSMUx98SADiKSeIBn65SXoJi3sAGOIYUbH36_kPuees + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/cb88516a-22df-4a84-a1a1-66dbf6bff0cb?api-version=2023-06-01-preview&t=638400892269306560&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=kY0m6_ynvUacF7vV2rDrX8wBnjo-oLtAq9Qm8bzkw7VwwcnSO-jSeGCJuctlpWVCa9QCHlqMyAvaFlPl0a7bkNGf8VW8zZB9HMMJiUx3TgAVC3sIJtTMSnZ-xyQM9QoBWQ20ciJwSYztoepgRxziaMR0y0WS59n3ulfxG9ROGlPIybMMRiK8FEBvzbbg9Z6hTaUAPMkkrwppuB3Nyup6eDrvOccKYRM90MoHWKgtYLyDPZHeRqJWoyeR75oj_Jev4AbWq-dtKyXju0A5yFZakcUJ-RJeKLKmn1f8mkiwEHuWQ5USpnt6AgMRf1BxeQ-Oze3SRPLtrXvQQHEWg3Zgug&h=x7o80GGrdCwZlqbv510b9BORbmB85B02FTfJoEZhGZQ + method: GET + response: + body: '{"name":"cb88516a-22df-4a84-a1a1-66dbf6bff0cb","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/cb88516a-22df-4a84-a1a1-66dbf6bff0cb?api-version=2023-06-01-preview&t=638400892269306560&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=kY0m6_ynvUacF7vV2rDrX8wBnjo-oLtAq9Qm8bzkw7VwwcnSO-jSeGCJuctlpWVCa9QCHlqMyAvaFlPl0a7bkNGf8VW8zZB9HMMJiUx3TgAVC3sIJtTMSnZ-xyQM9QoBWQ20ciJwSYztoepgRxziaMR0y0WS59n3ulfxG9ROGlPIybMMRiK8FEBvzbbg9Z6hTaUAPMkkrwppuB3Nyup6eDrvOccKYRM90MoHWKgtYLyDPZHeRqJWoyeR75oj_Jev4AbWq-dtKyXju0A5yFZakcUJ-RJeKLKmn1f8mkiwEHuWQ5USpnt6AgMRf1BxeQ-Oze3SRPLtrXvQQHEWg3Zgug&h=x7o80GGrdCwZlqbv510b9BORbmB85B02FTfJoEZhGZQ + method: GET + response: + body: '{"name":"cb88516a-22df-4a84-a1a1-66dbf6bff0cb","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "2" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/cb88516a-22df-4a84-a1a1-66dbf6bff0cb?api-version=2023-06-01-preview&t=638400892269306560&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=kY0m6_ynvUacF7vV2rDrX8wBnjo-oLtAq9Qm8bzkw7VwwcnSO-jSeGCJuctlpWVCa9QCHlqMyAvaFlPl0a7bkNGf8VW8zZB9HMMJiUx3TgAVC3sIJtTMSnZ-xyQM9QoBWQ20ciJwSYztoepgRxziaMR0y0WS59n3ulfxG9ROGlPIybMMRiK8FEBvzbbg9Z6hTaUAPMkkrwppuB3Nyup6eDrvOccKYRM90MoHWKgtYLyDPZHeRqJWoyeR75oj_Jev4AbWq-dtKyXju0A5yFZakcUJ-RJeKLKmn1f8mkiwEHuWQ5USpnt6AgMRf1BxeQ-Oze3SRPLtrXvQQHEWg3Zgug&h=x7o80GGrdCwZlqbv510b9BORbmB85B02FTfJoEZhGZQ + method: GET + response: + body: '{"name":"cb88516a-22df-4a84-a1a1-66dbf6bff0cb","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "3" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/cb88516a-22df-4a84-a1a1-66dbf6bff0cb?api-version=2023-06-01-preview&t=638400892269306560&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=kY0m6_ynvUacF7vV2rDrX8wBnjo-oLtAq9Qm8bzkw7VwwcnSO-jSeGCJuctlpWVCa9QCHlqMyAvaFlPl0a7bkNGf8VW8zZB9HMMJiUx3TgAVC3sIJtTMSnZ-xyQM9QoBWQ20ciJwSYztoepgRxziaMR0y0WS59n3ulfxG9ROGlPIybMMRiK8FEBvzbbg9Z6hTaUAPMkkrwppuB3Nyup6eDrvOccKYRM90MoHWKgtYLyDPZHeRqJWoyeR75oj_Jev4AbWq-dtKyXju0A5yFZakcUJ-RJeKLKmn1f8mkiwEHuWQ5USpnt6AgMRf1BxeQ-Oze3SRPLtrXvQQHEWg3Zgug&h=x7o80GGrdCwZlqbv510b9BORbmB85B02FTfJoEZhGZQ + method: GET + response: + body: '{"name":"cb88516a-22df-4a84-a1a1-66dbf6bff0cb","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "2" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/428fa28b-27cc-4518-b155-935c81a16ac7?api-version=2023-06-01-preview&t=638400894118174685&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=MoMt8LNi1BA9xnQmMMdtmuoyIOWZ9NP8TkrIwMLeuHX2GFiCNTfFoUnj4sA8Y78QjeKfn7RfRHVyYSDXspgo4KKHejRLL2vf2N2I7p2XQlCTzwIl7VqzPjUYAJ8UTRGcWFArn4nxbX0u1GOQkQqf0LkvrarbzF6gqsi-d2IEUmIAv6Eus_je9YxcpbcmjaIFpmSMsE-0uineXAA95M2Tc32ZypgiV_gwK3BQKeIND4Ev2kQXmVCLzQdSLj8oaP8bqG_uFb_IY6FP70Rn4bnPDekg2igiZHELlUuB0cXB4oFZZp4v8aIZASQwlUZ0KcRXMUwX__p9XaKekGJTB-dw1g&h=rAggD9c1hkBVtdvEwIHnLXnz5d92y5Bvpgr4Wn4TbT8 + Cache-Control: + - no-cache + Content-Length: + - "88" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/428fa28b-27cc-4518-b155-935c81a16ac7?api-version=2023-06-01-preview&t=638400894118174685&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=gyWCd9dZVff8tYkBKRPeFQiRYaA3rMdaH6RcZZOjF0KyhtH1Mr2WUdML4cgCyNLhoVKBBh4cCABylMiju1kTuy5popI-QksLojLZWgEatLykiBe6ePsvMa__OGB6GJrfdqo3HRjYFmSkvUyHKulnEVMomuW_roksKx9VZVMTwYdzSbhe5X1GdlHzNC6gdeMFe-zO4rMA0CBR7Wd5a5S1er_mfkS-PybVEenkidbdlOce1Aw14_fMbZp5n6C2B-aoy1i6EtZJUmOin9c12CeWpOAr5gtDhf7k6sOqD0Oh_RgxlJfhXOWOh4fWicV4PGkg4fGfUxPtKxcPGwvaI94YOg&h=AdhqK05HllqpLsIs46nlL1ZvNK6CnOYNJNEJ43k_3CM + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/428fa28b-27cc-4518-b155-935c81a16ac7?api-version=2023-06-01-preview&t=638400894118174685&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=MoMt8LNi1BA9xnQmMMdtmuoyIOWZ9NP8TkrIwMLeuHX2GFiCNTfFoUnj4sA8Y78QjeKfn7RfRHVyYSDXspgo4KKHejRLL2vf2N2I7p2XQlCTzwIl7VqzPjUYAJ8UTRGcWFArn4nxbX0u1GOQkQqf0LkvrarbzF6gqsi-d2IEUmIAv6Eus_je9YxcpbcmjaIFpmSMsE-0uineXAA95M2Tc32ZypgiV_gwK3BQKeIND4Ev2kQXmVCLzQdSLj8oaP8bqG_uFb_IY6FP70Rn4bnPDekg2igiZHELlUuB0cXB4oFZZp4v8aIZASQwlUZ0KcRXMUwX__p9XaKekGJTB-dw1g&h=rAggD9c1hkBVtdvEwIHnLXnz5d92y5Bvpgr4Wn4TbT8 + method: GET + response: + body: '{"name":"428fa28b-27cc-4518-b155-935c81a16ac7","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/428fa28b-27cc-4518-b155-935c81a16ac7?api-version=2023-06-01-preview&t=638400894118174685&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=MoMt8LNi1BA9xnQmMMdtmuoyIOWZ9NP8TkrIwMLeuHX2GFiCNTfFoUnj4sA8Y78QjeKfn7RfRHVyYSDXspgo4KKHejRLL2vf2N2I7p2XQlCTzwIl7VqzPjUYAJ8UTRGcWFArn4nxbX0u1GOQkQqf0LkvrarbzF6gqsi-d2IEUmIAv6Eus_je9YxcpbcmjaIFpmSMsE-0uineXAA95M2Tc32ZypgiV_gwK3BQKeIND4Ev2kQXmVCLzQdSLj8oaP8bqG_uFb_IY6FP70Rn4bnPDekg2igiZHELlUuB0cXB4oFZZp4v8aIZASQwlUZ0KcRXMUwX__p9XaKekGJTB-dw1g&h=rAggD9c1hkBVtdvEwIHnLXnz5d92y5Bvpgr4Wn4TbT8 + method: GET + response: + body: '{"name":"428fa28b-27cc-4518-b155-935c81a16ac7","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "3" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "4" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "2" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/ad6d0583-d9c1-44f7-b2e4-024e4e6fb0d6?api-version=2023-06-01-preview&t=638400894758996837&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=nLjJq1HVPH6P8ORTtKTP-mEAyMMdyq6rBfuVI_8TxVkL6L0GMhF-Nsriiwn17hbg8G-EB6X_LmzbSCb1FmXe1IqOk-7eyGtHlC7x7NuTyt1-bQDJT8HRDyHGGbg0ORMDt5MsdrnTklhT7UdDvPtj5zd-nc_eZT_YuIDhu8gPkNa3FSFvMvwiZUSX7jyHvagm5MtSHC4sLBwQAK7ET1nffl36CzSgGEswjr9L7NVuNo1pEjbruEtCOpJwEhYmvaqY-HiIQQNQeFD5gYBk-KugF1ey7q5J2QcfYmIopkiQA1_zqWBNm9HzMjAlhT5Ukm3ZGuqA4gAsqYe_sI7zvYmFRg&h=yUpw3OFRmLIHWdRhzJM_-56kjIZy3tIwUFjoW1ptK-Q + Cache-Control: + - no-cache + Content-Length: + - "87" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/ad6d0583-d9c1-44f7-b2e4-024e4e6fb0d6?api-version=2023-06-01-preview&t=638400894759153149&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=YB4ukcHPYbtWOs4587jn8_V3ewEqtL3FJoz_4-zVv15Cr3d6B21ck9SAgYSkAgec-rxxDaO5UHjjVn6zjW8fhFTJTru-CbfCEvOAJ0dLaRvfHCtwCU7oQis0STDVsTZiibZ7R7Id4bkwBwRnaGzYc2pWkreV0J8VRwBKA9HRwIIVMRGeNJStIB50eVvd4ozRsVCMXpkZlZ7LbaUTPGKvVntL3D7gxMsO3BeXiIJ8Pi_5dcRPAXECt6D-X44iWom76BO3b9Ci8VBotmG8-6kEwoHdrJQ5waxOJJx9LgZ3lBfqsQu4D1NX2-hRyxU1Oite8cm28GIgl-u4cXE9QdsiQQ&h=BX1iGBC8y39hWL9fqS7VrgrFqAibhV0Bt_YB82X0uiE + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/ad6d0583-d9c1-44f7-b2e4-024e4e6fb0d6?api-version=2023-06-01-preview&t=638400894758996837&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=nLjJq1HVPH6P8ORTtKTP-mEAyMMdyq6rBfuVI_8TxVkL6L0GMhF-Nsriiwn17hbg8G-EB6X_LmzbSCb1FmXe1IqOk-7eyGtHlC7x7NuTyt1-bQDJT8HRDyHGGbg0ORMDt5MsdrnTklhT7UdDvPtj5zd-nc_eZT_YuIDhu8gPkNa3FSFvMvwiZUSX7jyHvagm5MtSHC4sLBwQAK7ET1nffl36CzSgGEswjr9L7NVuNo1pEjbruEtCOpJwEhYmvaqY-HiIQQNQeFD5gYBk-KugF1ey7q5J2QcfYmIopkiQA1_zqWBNm9HzMjAlhT5Ukm3ZGuqA4gAsqYe_sI7zvYmFRg&h=yUpw3OFRmLIHWdRhzJM_-56kjIZy3tIwUFjoW1ptK-Q + method: GET + response: + body: '{"name":"ad6d0583-d9c1-44f7-b2e4-024e4e6fb0d6","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/ad6d0583-d9c1-44f7-b2e4-024e4e6fb0d6?api-version=2023-06-01-preview&t=638400894758996837&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=nLjJq1HVPH6P8ORTtKTP-mEAyMMdyq6rBfuVI_8TxVkL6L0GMhF-Nsriiwn17hbg8G-EB6X_LmzbSCb1FmXe1IqOk-7eyGtHlC7x7NuTyt1-bQDJT8HRDyHGGbg0ORMDt5MsdrnTklhT7UdDvPtj5zd-nc_eZT_YuIDhu8gPkNa3FSFvMvwiZUSX7jyHvagm5MtSHC4sLBwQAK7ET1nffl36CzSgGEswjr9L7NVuNo1pEjbruEtCOpJwEhYmvaqY-HiIQQNQeFD5gYBk-KugF1ey7q5J2QcfYmIopkiQA1_zqWBNm9HzMjAlhT5Ukm3ZGuqA4gAsqYe_sI7zvYmFRg&h=yUpw3OFRmLIHWdRhzJM_-56kjIZy3tIwUFjoW1ptK-Q + method: GET + response: + body: '{"name":"ad6d0583-d9c1-44f7-b2e4-024e4e6fb0d6","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "5" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "6" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "3" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/4ca7b376-4ffc-4e74-9181-37293ccba5c8?api-version=2023-06-01-preview&t=638400895402631734&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=LtJX5L6dbeMJYfangNRPnHFuGncoew-rXaDAZco8W_YblqK1fDg6o7gSivfkwD3UrI5VROW77OGPZh4RkuupCvyJrwDU6OrPBz0c7Tz344XwuNT4lqeUakZOlWYs9-WvQ4bsiHY9dUKgPr6ACgtwXt1qeK9mu8-wXN85Bkxc1Qt_yEpVDp8Ls7xI5qPKPCCskUBAyUmYgkNyc5WZVrs0IJAelAvR_Dy_al2dhJPG32uP47rIUSpSjmNEaJ_HicubYmejr6RetyK1U7oZyQmdN29VYKEpQ9PKaDVhC6z1Q7YzWz87kbRuWnZ_3wTH88lATiwQQfM2xjqgGMiiN5DXeQ&h=mii4d46HPjOeQDz-rI3MHxZzm_xCOHeQ5ICn1ajrkj8 + Cache-Control: + - no-cache + Content-Length: + - "87" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/4ca7b376-4ffc-4e74-9181-37293ccba5c8?api-version=2023-06-01-preview&t=638400895402787995&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=D3IIzePh5pTfiosP8_VTQPHHw7Z2rcnJCdrkxIJeQgnYZJuXBNy3FkEuHkOF4OXUZ21_-Kep1tAo3kq-wEh_ACEW3DIFjnLUgqnwszNI65sOiwRKMSlc7mq40MwRKgaUDM3CyaIM7_BtHuqladaiqUoUxSd3TtxycVgeFenHwvJgG_BPXUIk3mG7ZNdgCo_WPGjUcEnAHOhwj0NZ82sK2WSBHgwXDA1YlpHZQiXsowhJDmuGrviLcINYNBlYa3pHfw22JueDpkKQVmvHx2Y-cQdSI7b__HIwHYQ09pKdYLlERfSLV8tCUSgO6whQYxEYFRJP6lmRVgkBcke_qROc8w&h=BYZIsO4qr8XBFbbLqXi2igSsh4SDIPPc2Q5bq8go6Ns + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/4ca7b376-4ffc-4e74-9181-37293ccba5c8?api-version=2023-06-01-preview&t=638400895402631734&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=LtJX5L6dbeMJYfangNRPnHFuGncoew-rXaDAZco8W_YblqK1fDg6o7gSivfkwD3UrI5VROW77OGPZh4RkuupCvyJrwDU6OrPBz0c7Tz344XwuNT4lqeUakZOlWYs9-WvQ4bsiHY9dUKgPr6ACgtwXt1qeK9mu8-wXN85Bkxc1Qt_yEpVDp8Ls7xI5qPKPCCskUBAyUmYgkNyc5WZVrs0IJAelAvR_Dy_al2dhJPG32uP47rIUSpSjmNEaJ_HicubYmejr6RetyK1U7oZyQmdN29VYKEpQ9PKaDVhC6z1Q7YzWz87kbRuWnZ_3wTH88lATiwQQfM2xjqgGMiiN5DXeQ&h=mii4d46HPjOeQDz-rI3MHxZzm_xCOHeQ5ICn1ajrkj8 + method: GET + response: + body: '{"name":"4ca7b376-4ffc-4e74-9181-37293ccba5c8","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "7" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "8" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "4" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/3063a90e-b885-47c4-b76c-db3d98662ee3?api-version=2023-06-01-preview&t=638400895438259836&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=iXcwvV4VsXcbe-Zzvu9ZkujP931PpsNAY9-S_IW5nYCUex0OMxPOL5NgAbA4StdDsoy8-RJa_v_TMnI58bXYHwUq1lrZXk8biCiXlHbPK9KwPhBkZJnFoSJPNCyq5Z1h2CJwHOm7_zXL5Cf340I0vN7go3lcvRsxsHy5h9aUtNvP9bx4D4HrCHWht5o9BnjDSfhNapVzMFVv-L_4NuiHrBNjHjTxjKGcxgVr0JGGXkp_5cCRcbJR-kAbGenRQwYFXfOi9H2j62mphzr9Y9PTDsONsaYqpVigkhWmAF2t8SMdn68akrj2P3uAI2HTnxWknJYhQqIf1ypbUUoSUxTxQQ&h=Ms6CLDX82GdyYEUc_wpSrMMQLx6NWNCbkF0cNNSc75Q + Cache-Control: + - no-cache + Content-Length: + - "88" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/3063a90e-b885-47c4-b76c-db3d98662ee3?api-version=2023-06-01-preview&t=638400895438259836&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=J_FpuILrwu4T0rI_jUck5QflSti7C2fA61D9vTV6NrxbP7hS9-WZC61wr5OIARQu2JOSmyqaLwW3eUgvKE_MANNcLrD0KIROw2zvx--YSUnSC23lBJ7VBHDfRCXsAdvCasaclOUFJSxnX_K-_dZ8sXzlZohivHTxwB8PfcVt3hUzJvDb-cCN5SbEed5ZLccnwYvv4Sx57Zk6asluzKkHanz1FP-XaUIEM9W6w4_GiOcC448ykv599sWOvLItL4PljvKlaTq5Tau4FYa7qfjgyFjAqpYsC229SHBUah0mOjazbpT3dcOJ8kF160PIQdu2e0JKooEE40LT1L5AMCfF1Q&h=VIkdghWm5GePdVvhGieselz50jNtmInvMB8qwZoiBBI + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/3063a90e-b885-47c4-b76c-db3d98662ee3?api-version=2023-06-01-preview&t=638400895438259836&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=iXcwvV4VsXcbe-Zzvu9ZkujP931PpsNAY9-S_IW5nYCUex0OMxPOL5NgAbA4StdDsoy8-RJa_v_TMnI58bXYHwUq1lrZXk8biCiXlHbPK9KwPhBkZJnFoSJPNCyq5Z1h2CJwHOm7_zXL5Cf340I0vN7go3lcvRsxsHy5h9aUtNvP9bx4D4HrCHWht5o9BnjDSfhNapVzMFVv-L_4NuiHrBNjHjTxjKGcxgVr0JGGXkp_5cCRcbJR-kAbGenRQwYFXfOi9H2j62mphzr9Y9PTDsONsaYqpVigkhWmAF2t8SMdn68akrj2P3uAI2HTnxWknJYhQqIf1ypbUUoSUxTxQQ&h=Ms6CLDX82GdyYEUc_wpSrMMQLx6NWNCbkF0cNNSc75Q + method: GET + response: + body: '{"name":"3063a90e-b885-47c4-b76c-db3d98662ee3","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "9" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "10" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "5" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/6cde4ade-7f87-461f-abf2-eeb4fe4a682e?api-version=2023-06-01-preview&t=638400895474198807&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=PEuiPZ6QUB0wm2mYFJ3zYVKtMS3NjlFI4O2oHy-JBXZSDIMTviQ7lphL_foljcsd-F-yw2x7_D0eAISBrwnzqryjSQV4TXkPiYXxrfN3rWpq8UdRC5lPwUkIM8rmu5GM4D_ldCedjwrxD-y1ZW0p5Tv90SsekxZ6LzGEgoUKXQyFoxirKSHSXGxObgNZf7e16_vPpTVzOKs168YYxItWXBkowMx973qjpjSD8yS4ezz3j4YN6YWYHefEn6QRTYqDP7YhVYoYTu3--3gao4yLtvEeQS7KNMTp6DUT9QBfLcRvuiHu6zc03g5DelZX20brURlW3I25vMfIocw4SBQ8cA&h=x7ltd5NnVP37D76bqLiP5vmEUL0kxuDifI4qg72O5g8 + Cache-Control: + - no-cache + Content-Length: + - "88" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/6cde4ade-7f87-461f-abf2-eeb4fe4a682e?api-version=2023-06-01-preview&t=638400895474198807&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=J9XwbvvKecqRwTH0fJv20LlxunBvS3Q7WSdzsamE0bydWUgq6p6xZpoHiFoTI6KKg5tMIjeqqgJIoI3NiOZ_iAVo5ne_oFhrgtgQc0xVn7wPU88hTl8_abbU56w5o_WY69D31ep6AX0Cr-aG5ZrjDSC6QH2OZK8lPMVaAGv5r1ghMNHKqT9peDcCHiaSFhe3-MK97Z5aympvAJwtwNugaGJqoc7N9t652iH_ZxIcQsJuS5wBYQYUoUnVEeV00aCKyvC8ip5pNwMx7fZIcsnVqDAuT0--VlFjVVJkAxj0e3KgLbyzl8gv4KFQT1YIY-40OVMv_DFoVx0hN7xGgyup1g&h=cZRaIPLRQAMATahAQq17HofZhFlOBindari6RsnasTI + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/6cde4ade-7f87-461f-abf2-eeb4fe4a682e?api-version=2023-06-01-preview&t=638400895474198807&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=PEuiPZ6QUB0wm2mYFJ3zYVKtMS3NjlFI4O2oHy-JBXZSDIMTviQ7lphL_foljcsd-F-yw2x7_D0eAISBrwnzqryjSQV4TXkPiYXxrfN3rWpq8UdRC5lPwUkIM8rmu5GM4D_ldCedjwrxD-y1ZW0p5Tv90SsekxZ6LzGEgoUKXQyFoxirKSHSXGxObgNZf7e16_vPpTVzOKs168YYxItWXBkowMx973qjpjSD8yS4ezz3j4YN6YWYHefEn6QRTYqDP7YhVYoYTu3--3gao4yLtvEeQS7KNMTp6DUT9QBfLcRvuiHu6zc03g5DelZX20brURlW3I25vMfIocw4SBQ8cA&h=x7ltd5NnVP37D76bqLiP5vmEUL0kxuDifI4qg72O5g8 + method: GET + response: + body: '{"name":"6cde4ade-7f87-461f-abf2-eeb4fe4a682e","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "11" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "12" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "6" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/7d8ea620-3710-417f-b63d-6d6bf67e7c8e?api-version=2023-06-01-preview&t=638400895509982358&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=VSsjToKJIkEKGJhwKgPkmZEzQIacaacHldV7NeQSu4ntHQF-4gFGO6E2CCl4UL9hjCgsc8F4l9WPCKReV3hrc58XqwqYvK9YHAzKxIaAmWXPKyQ_20HO-RaHz4o3k3avt8_gFu6dhq4tlWPm2cIE6NZKoMMQqVV0Q53DeSr-X4WF4Q2UXtHxlMGnBX4VOEgMRdx9MTj6lOuM-WweI7_E9BcE-lZoExpLkyNus5V4bA4Bci7qz7N9wYdLWMcEt_Dc2i1LGgnOXz8pc9hDJ3dgxWx0JhgvKJZ6xS-6DjPuV7mwiRzwouwhdBWXu0JhSVxFyetnHoIh5ACP-MSKAiq9gA&h=aXdUtI_S4KCDNbFC8FqXzflOS6upk5991TJtrdpY2kI + Cache-Control: + - no-cache + Content-Length: + - "88" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/7d8ea620-3710-417f-b63d-6d6bf67e7c8e?api-version=2023-06-01-preview&t=638400895510138621&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=ctOHzg6M1OBfCPGQzLteQ2X-14CypgweOR8etP-pGE2lW2_LmvWuXfhkir-bHnJMXed9jPk_X4o5KjTyUNyzTSLO0vmH-Hy-heONVl2AlvFJ3TkijIMymuQ1k5711DUHNPy3F5qMPAVcg0JVWOJ3RDepaX5zphCuHy7E_iGjIziOi4qPUH_oaP9XZsSePM1Km4Kajc6Vnuq3bZITiuNTZCCq8WXtnG1Pz4Q1VHcrXeBPoc9x6_uHRryIHU8Y-F2o8hYyhSgXfxUAgUNt5WztnzG6up45yvm1svkzpEQjtH5fAue8ToctgVVzspL7oEddC9imDjq9a3-hmV7NW_FP4w&h=HxpuSJqyJNgOEz-2MwiFn2D9NYnyLm-K8oS9z9OEvdE + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/7d8ea620-3710-417f-b63d-6d6bf67e7c8e?api-version=2023-06-01-preview&t=638400895509982358&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=VSsjToKJIkEKGJhwKgPkmZEzQIacaacHldV7NeQSu4ntHQF-4gFGO6E2CCl4UL9hjCgsc8F4l9WPCKReV3hrc58XqwqYvK9YHAzKxIaAmWXPKyQ_20HO-RaHz4o3k3avt8_gFu6dhq4tlWPm2cIE6NZKoMMQqVV0Q53DeSr-X4WF4Q2UXtHxlMGnBX4VOEgMRdx9MTj6lOuM-WweI7_E9BcE-lZoExpLkyNus5V4bA4Bci7qz7N9wYdLWMcEt_Dc2i1LGgnOXz8pc9hDJ3dgxWx0JhgvKJZ6xS-6DjPuV7mwiRzwouwhdBWXu0JhSVxFyetnHoIh5ACP-MSKAiq9gA&h=aXdUtI_S4KCDNbFC8FqXzflOS6upk5991TJtrdpY2kI + method: GET + response: + body: '{"name":"7d8ea620-3710-417f-b63d-6d6bf67e7c8e","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "13" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "14" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "7" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/fd42404d-bb91-4633-a278-e1668e2b2268?api-version=2023-06-01-preview&t=638400895544984586&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=A-tf_2qm0D680F95Qse_3TxjtkRdr0UFmLLNdv_89j65cSKQReuW9Tf58FxmJpQkxBDymvzNJVM_78dB4TGZpKpkczQE_RjQOu1WJ_2XADAGGONXaOKE7hTe2er1rd5Xo2SPUcDtIaY-Sv_oWXMpPr0Ow4u2iKdgv_3rS5e8pcUV7BsiN0uneXy5oCz0ET0JOo-h_XX5Q6jWwXRKa3SzBDRZE1fRnqAirhWoaFFAGdiOcxuihgk3u6WfaLphCtCkABWhVGDovWQ0v4i0z_BfkQ6HV0O9cYjIfoOJ5wCzgVc71h1XqYIEGudG0w6oCV56Qioip61EwNAAXulTmcdWzQ&h=oq8S_eEiFrr7NyNFwdWJLyuE3LRTab468vYA4NUUq2Q + Cache-Control: + - no-cache + Content-Length: + - "88" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/fd42404d-bb91-4633-a278-e1668e2b2268?api-version=2023-06-01-preview&t=638400895545140844&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=ROSAohdwVvJDVcEk5OKHdDNJ9lPBLMyUR_E8OSKZSqD6i1VHUfmmDB_IzoDYPekrk8g-RTM63nojOW3TSBg27qeQPILML90Xc4P4m1ycqQzL3kzEuVlrPdPLLyLotWB6ZSpujs3GsQL8SBvImbVeOiaRls7tmbZt9WqiScCOdPXb0J-YYfIoHGZnYLYdcs4-bxdzqPfmcCdyOG81cIvO5BKfVNSbh2WtONIWfLIM_RfVjl6u_6WFkgCWACb2P7K7kJcT2yx57mhYC65PDsx4x4uv4CrPNPbAyP9KrgSjeFYuc-jafY2p67c2Tu8qk5EPNlK9HhrX2i412hjn0TtiDQ&h=VCucQ5UpsPt8VXujNv5vC-LQAp476y90oxd9sbfYzi0 + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/fd42404d-bb91-4633-a278-e1668e2b2268?api-version=2023-06-01-preview&t=638400895544984586&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=A-tf_2qm0D680F95Qse_3TxjtkRdr0UFmLLNdv_89j65cSKQReuW9Tf58FxmJpQkxBDymvzNJVM_78dB4TGZpKpkczQE_RjQOu1WJ_2XADAGGONXaOKE7hTe2er1rd5Xo2SPUcDtIaY-Sv_oWXMpPr0Ow4u2iKdgv_3rS5e8pcUV7BsiN0uneXy5oCz0ET0JOo-h_XX5Q6jWwXRKa3SzBDRZE1fRnqAirhWoaFFAGdiOcxuihgk3u6WfaLphCtCkABWhVGDovWQ0v4i0z_BfkQ6HV0O9cYjIfoOJ5wCzgVc71h1XqYIEGudG0w6oCV56Qioip61EwNAAXulTmcdWzQ&h=oq8S_eEiFrr7NyNFwdWJLyuE3LRTab468vYA4NUUq2Q + method: GET + response: + body: '{"name":"fd42404d-bb91-4633-a278-e1668e2b2268","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "15" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "16" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "8" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/c8601392-3265-428f-aade-d8241925941e?api-version=2023-06-01-preview&t=638400895579986833&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=N75Mh0ab6MfdZ8Pc7qpZr1deyOPOtWBunYoHObCkm6kfFwpoplGDU5xrWDa8wUmF_Q1_H8P0iiRdcH_3JJwvcpAYTNZKd6mgS8Y-1P4tdXf3M-UX09JblKCOWJaY2w3NEYGdyn_EFwtqFQ-8STJHbFhdqgRs1nAFqLaGsrTmCCDjPD06fA22DfZSiDZGUMmIAIKW1Uhrv2bI5A4iCiquWwYCZEUI0SwWdPaihuqcg9D2EhVL7vYQN5nQ3ZAvQ4tKqKRrWE7xf9VxMF1fHMhMMvNfTujoyDwmNqj_JbFg9KKYRKSSYaIgrbtxfc4PMbzxOzZsshF73VHAryfmnAUq5A&h=SK52kd0j0u6AGXOf4nJlv4ixSWW3k6ifhAGbb_0wZRo + Cache-Control: + - no-cache + Content-Length: + - "88" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/c8601392-3265-428f-aade-d8241925941e?api-version=2023-06-01-preview&t=638400895579986833&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=doVbiFQRw4EQHol8HNuTSSRcWxNNe73SU0VF3kIQPtiWB1BF2OenFkQzDt2kVsg0HapWCV1GhViDLgzKCjwRo3cuk5KzHOxeX0BiQwtqzA1zuoOYpBQnZUpr2kfP-ZVl1Y4ulXaMvC2ci_YoZQklV06zhDV4kzQ3yz0bmWCMcVgPTX7xTEARe4lHHKstho7SiIfxiaBVA-H77ibqNMJ8U9vkHbTfZ46jcs8MgTRtAQ9wyc4laScJDSeogzgiiBzTnHvYRhrRgJslqDVsdwW_OM6RDK0eIRuHtgjOr48R3k-zLwoJl9FAq3RWBkOd9R2nCvidZgm6ccD87flLvceIcQ&h=xJUk63VtKmIjKFzmh89mol4c98504QwBLi-BU6sqIAE + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/c8601392-3265-428f-aade-d8241925941e?api-version=2023-06-01-preview&t=638400895579986833&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=N75Mh0ab6MfdZ8Pc7qpZr1deyOPOtWBunYoHObCkm6kfFwpoplGDU5xrWDa8wUmF_Q1_H8P0iiRdcH_3JJwvcpAYTNZKd6mgS8Y-1P4tdXf3M-UX09JblKCOWJaY2w3NEYGdyn_EFwtqFQ-8STJHbFhdqgRs1nAFqLaGsrTmCCDjPD06fA22DfZSiDZGUMmIAIKW1Uhrv2bI5A4iCiquWwYCZEUI0SwWdPaihuqcg9D2EhVL7vYQN5nQ3ZAvQ4tKqKRrWE7xf9VxMF1fHMhMMvNfTujoyDwmNqj_JbFg9KKYRKSSYaIgrbtxfc4PMbzxOzZsshF73VHAryfmnAUq5A&h=SK52kd0j0u6AGXOf4nJlv4ixSWW3k6ifhAGbb_0wZRo + method: GET + response: + body: '{"name":"c8601392-3265-428f-aade-d8241925941e","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "17" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "18" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "9" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/7ca24229-8d03-4338-8633-0d1254259ddf?api-version=2023-06-01-preview&t=638400895614832813&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=Orv41PTo4jkG6dBL1AiQb9XvSuVtZa5chj4P6uJY9KERPyf85WbfYfcuzsGASDAjoYcIGqjPLXQ1KRxvoTT6cGbKQ4S4IotCgO0MNwtS--8s4S5EXuKanF0so5AyX0iQCJNqDPrWH60duVExLG6I3vX140WgBUki3dWSnJ68BBPmab52ZIr9XY2wntM982XM8x3MCX1V76vpeWxxknb0IgksLneLehVj3S7wbHS78JJsvrxcOBv7lexwHgY-tbmkOu6wEfxbzhuViZc02oBSJpWCy4lQuNN6WArzaKo6BwER8RcGydBLGe7hKvGWY7p3Asp1b1qw7FJbz4BEy8YX9Q&h=1yo3VAIBrtf4YzPCozsGdPTcc4FrtQY8ULXLdhzAR4A + Cache-Control: + - no-cache + Content-Length: + - "88" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/7ca24229-8d03-4338-8633-0d1254259ddf?api-version=2023-06-01-preview&t=638400895614832813&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=PKImsrREE3U9wqqXdHpfswBoqgSSG0LWzXxwcPscwZET6_iuBC-KRRIlw4S2XKV1l1NCPfGYaRnh1U3GVmKx3BSJb0_FBJTajqS4giM_TbX1TZyOq9WRtdSM_XglkAh7I71NBlDEYweleQGou3toq0D9nctz37MiGAgsWWNXsEbrSZouwPU0_Ou5CXfy0T1dBuz22xef0v6E5xcn1RdqStNYBYSROu0XY_r7_oGC_bjONdN-3dOSdaqISfAW2bPJyxshB-MzrqpMMuwGnLtR1ydaOmpUnd3Jf3VZB7foXnDBdRDkOsDcmKL_dxW56-bT37tz3-_ElEeIk0ALMZT7NQ&h=5LPWZqcdsIrhE3Ujee0LZ8r4XhUq5U1snr4QRI5hzIg + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/7ca24229-8d03-4338-8633-0d1254259ddf?api-version=2023-06-01-preview&t=638400895614832813&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=Orv41PTo4jkG6dBL1AiQb9XvSuVtZa5chj4P6uJY9KERPyf85WbfYfcuzsGASDAjoYcIGqjPLXQ1KRxvoTT6cGbKQ4S4IotCgO0MNwtS--8s4S5EXuKanF0so5AyX0iQCJNqDPrWH60duVExLG6I3vX140WgBUki3dWSnJ68BBPmab52ZIr9XY2wntM982XM8x3MCX1V76vpeWxxknb0IgksLneLehVj3S7wbHS78JJsvrxcOBv7lexwHgY-tbmkOu6wEfxbzhuViZc02oBSJpWCy4lQuNN6WArzaKo6BwER8RcGydBLGe7hKvGWY7p3Asp1b1qw7FJbz4BEy8YX9Q&h=1yo3VAIBrtf4YzPCozsGdPTcc4FrtQY8ULXLdhzAR4A + method: GET + response: + body: '{"name":"7ca24229-8d03-4338-8633-0d1254259ddf","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "19" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "20" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "10" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/2ea4bb8f-4637-4a52-a16a-f246cca8d4e9?api-version=2023-06-01-preview&t=638400895649366232&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=m8x-jVcKPNkYwbM8E53X6ypXu_rMgYyZdDcfWmurlRXh00-AtU3le_TF_IjD5fVOrQ1TlwWQUaVmyR3y3p5r5wt7KWQhAIaewZtRHd3JgCtXMlE83ME4t1jWJzgwDZWvvn4Ywppz0MIqoahe06OmjJ-Zdtd8i6LjV4tsBYV699v6yC55cm5ZlVmGgUJXrU0JlnLHUcUluFoROQBVKsayus9fV82Ep0HL5eRwTlQnd8_Pv_gYDl8PvZ3-h7IlxtTR7ujj9Ju1zOuOEiFoCQPFDVMaKY43vKpOXI8M5MoGnteUvvr6uaEI7mT9RleMRdMMfu4HSvlXk0QT95GIfRn93A&h=vf01yhOJOrAJbipiFMQiiy37chmmUilw4T4_YMmTVlg + Cache-Control: + - no-cache + Content-Length: + - "88" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/2ea4bb8f-4637-4a52-a16a-f246cca8d4e9?api-version=2023-06-01-preview&t=638400895649522633&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=gptvnOgpxaRdTiCfDAIO-ieaPaqjP_l9h3lj2t0pLuQ_INm0Cndn-IQTx8jv5MsTPC8fhmCGe3C2j7HcPYLYgorEC1Pd0jZkvSYVqx5s4mB06k70iJ3PJnBi47-nZ_t3rmaK13G_DVA5zR6p0ArAnjIcBC6ARknsXpLXrNLioLRtmo7C8uhkVqMqayDRGrykpAOU_Pg9P-eVBp-wLdesWBpkfiU8HdpVDeZ17IEQ6epU3TAPGcaIHTF3lGMWHNyqeouK5BYwnzyuEw7s_endamWlOop5_5Azj2yUGA5OOr92Mva_YcdUZ382598YYdzeXZmNXGNU2QvWDVCE1vqFMA&h=QQZaZXoO2npCtEbzM7k3YaeCaeKYK7LZy4S_4kwR-Ic + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/2ea4bb8f-4637-4a52-a16a-f246cca8d4e9?api-version=2023-06-01-preview&t=638400895649366232&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=m8x-jVcKPNkYwbM8E53X6ypXu_rMgYyZdDcfWmurlRXh00-AtU3le_TF_IjD5fVOrQ1TlwWQUaVmyR3y3p5r5wt7KWQhAIaewZtRHd3JgCtXMlE83ME4t1jWJzgwDZWvvn4Ywppz0MIqoahe06OmjJ-Zdtd8i6LjV4tsBYV699v6yC55cm5ZlVmGgUJXrU0JlnLHUcUluFoROQBVKsayus9fV82Ep0HL5eRwTlQnd8_Pv_gYDl8PvZ3-h7IlxtTR7ujj9Ju1zOuOEiFoCQPFDVMaKY43vKpOXI8M5MoGnteUvvr6uaEI7mT9RleMRdMMfu4HSvlXk0QT95GIfRn93A&h=vf01yhOJOrAJbipiFMQiiy37chmmUilw4T4_YMmTVlg + method: GET + response: + body: '{"name":"2ea4bb8f-4637-4a52-a16a-f246cca8d4e9","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/2ea4bb8f-4637-4a52-a16a-f246cca8d4e9?api-version=2023-06-01-preview&t=638400895649366232&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=m8x-jVcKPNkYwbM8E53X6ypXu_rMgYyZdDcfWmurlRXh00-AtU3le_TF_IjD5fVOrQ1TlwWQUaVmyR3y3p5r5wt7KWQhAIaewZtRHd3JgCtXMlE83ME4t1jWJzgwDZWvvn4Ywppz0MIqoahe06OmjJ-Zdtd8i6LjV4tsBYV699v6yC55cm5ZlVmGgUJXrU0JlnLHUcUluFoROQBVKsayus9fV82Ep0HL5eRwTlQnd8_Pv_gYDl8PvZ3-h7IlxtTR7ujj9Ju1zOuOEiFoCQPFDVMaKY43vKpOXI8M5MoGnteUvvr6uaEI7mT9RleMRdMMfu4HSvlXk0QT95GIfRn93A&h=vf01yhOJOrAJbipiFMQiiy37chmmUilw4T4_YMmTVlg + method: GET + response: + body: '{"name":"2ea4bb8f-4637-4a52-a16a-f246cca8d4e9","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "21" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "22" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "11" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/078d6afc-811a-4266-97af-3e0a18bbed21?api-version=2023-06-01-preview&t=638400896289250972&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=NlaHca_2T8aDjlY-u6-zwX15P35BXUMu-QcrQWqdt3WRhZmOv6d3jV4aoJc2XYc4oDaaJlG3q0IEGTHyqFzTgbtrC5fZP9UITwfx2BBHaqaPCtik31E30LJBefY3LmSPIdVQgmTnX748A7nUXOjE59UGaVxb598qIvMIzsyLAr8No50VSwTyFsdLnR8fFNknj64n1Zn1biuUZmcT2mqxrhHKYLV9HBKUFJZ_MFouwVi2AKfN6D0iaaFuHy94AKbJN-Tsz4vvbN-RUgLy_OLXKjxUNKiefBT4yFraUNsMWfDdEEMXfQcInbRD1_zzr5qikA4Fp60aAixywf8RPXv0Sw&h=8FyoJ_f6IpAh049cIYjJZdVEJi4qlWRlUj4rVWDsupY + Cache-Control: + - no-cache + Content-Length: + - "87" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/078d6afc-811a-4266-97af-3e0a18bbed21?api-version=2023-06-01-preview&t=638400896289250972&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=X5wZrMKU-Q2YAdnNFEX_BBZpOIJy9ZyTKHLNxK5knF1CRb9VY1A5kRKYF1lerB02tImZsYVef_HC2YAgAxkkqmUgqKiy6Rmf2Rz2A8kMoGtIwRqkuaypB4t680Ygik-sIZ63NKKWZ2fxij587sXW6ggFILJkYWiUNgBzECxrTICUObhGDjxIbcCjH9Rl8Dby1tAoG5hyjsxX8XL-i7ZRTETMxiMh7rwhEUmSNqewA01AWtE3hRIKP-MEK5crJaRkv5e-rR-E3zjDHBKsDUOCZyWipb4U4FCo_cl0bj5bPJF_OiJkO86jNx8U8I3l7HoQ5mzXp8-8wHd3LgbDPSLZpQ&h=yhI_j3tNbM7c_1C0fCzg8PRM9aG91_f4pCmIA7GPjFk + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/078d6afc-811a-4266-97af-3e0a18bbed21?api-version=2023-06-01-preview&t=638400896289250972&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=NlaHca_2T8aDjlY-u6-zwX15P35BXUMu-QcrQWqdt3WRhZmOv6d3jV4aoJc2XYc4oDaaJlG3q0IEGTHyqFzTgbtrC5fZP9UITwfx2BBHaqaPCtik31E30LJBefY3LmSPIdVQgmTnX748A7nUXOjE59UGaVxb598qIvMIzsyLAr8No50VSwTyFsdLnR8fFNknj64n1Zn1biuUZmcT2mqxrhHKYLV9HBKUFJZ_MFouwVi2AKfN6D0iaaFuHy94AKbJN-Tsz4vvbN-RUgLy_OLXKjxUNKiefBT4yFraUNsMWfDdEEMXfQcInbRD1_zzr5qikA4Fp60aAixywf8RPXv0Sw&h=8FyoJ_f6IpAh049cIYjJZdVEJi4qlWRlUj4rVWDsupY + method: GET + response: + body: '{"name":"078d6afc-811a-4266-97af-3e0a18bbed21","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "23" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "24" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "12" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/d6892df7-2a36-45e4-94e9-db5e7d43c919?api-version=2023-06-01-preview&t=638400896323471828&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=jhk6no3woLQbldn3MBXVetFjnvVQ4mwBcZoFFM10v8zc5bCDvb6iOLm0wOTCc1CTLIMjsWQXEp4Axp8_Lx_XsVaHk2Kc7WDCP5Xn6LpEGg61kBqOKCjKgsKekY5Y91vsWNkqwXMQJrYPC7SZlU0vOnfINNOsrXNBubixbnEXjsVWsXYBQzOnRd4Jxr0a9L5Y5TWxO_6zJ6pmjdTJiHb-q_02yshK_CjPOe-egbXyADtpUAifg_1pTgMjKGuHOIoQPSlPU-q_iW4ABAhwEY5wUfHBFL0PkIVo2cajyDXzPGuRCIFDNrgj2lGMOibF-XEexN739J_EYU5qkG92QPGhbQ&h=g-XBn-mEZBsV3ml-TQ8rWju0qmNxy-PairDcmJoxqNA + Cache-Control: + - no-cache + Content-Length: + - "88" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/d6892df7-2a36-45e4-94e9-db5e7d43c919?api-version=2023-06-01-preview&t=638400896323628105&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=aK3Pciej6k0YnetsVbuTFfDBawdJecfq60yrlC-FUGinQXp25CIyzyu3m8wZ831_GboC37UfpRCVz0ecKvra8YJNUvR7G3hu9nix8GEg3Tw5y4Bkey1w8eWWbYlZRJvk3k-5jeLcgcs_Nwr3-ozLlttyF6mddThSZE2p4xDdBWicsqizbuN_CcpQAqrnyzFrL3QadRyIEJ9rQGGbe9-DRs2q6SrudIUShjeGv2gmHz8soazv58MDouUbE3688rSspO-dwZ5BCT5kA8Q04jg2jRvFRTRSVQFyCw2-xbM99oWInlnoOisiU0JlarER6MLkSkE56gYzwCFi4Sskz_zmCQ&h=ViYu1gM57GOtt2ddvSVkeo1DLsMuGpQsx0xVUnm1wK4 + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/d6892df7-2a36-45e4-94e9-db5e7d43c919?api-version=2023-06-01-preview&t=638400896323471828&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=jhk6no3woLQbldn3MBXVetFjnvVQ4mwBcZoFFM10v8zc5bCDvb6iOLm0wOTCc1CTLIMjsWQXEp4Axp8_Lx_XsVaHk2Kc7WDCP5Xn6LpEGg61kBqOKCjKgsKekY5Y91vsWNkqwXMQJrYPC7SZlU0vOnfINNOsrXNBubixbnEXjsVWsXYBQzOnRd4Jxr0a9L5Y5TWxO_6zJ6pmjdTJiHb-q_02yshK_CjPOe-egbXyADtpUAifg_1pTgMjKGuHOIoQPSlPU-q_iW4ABAhwEY5wUfHBFL0PkIVo2cajyDXzPGuRCIFDNrgj2lGMOibF-XEexN739J_EYU5qkG92QPGhbQ&h=g-XBn-mEZBsV3ml-TQ8rWju0qmNxy-PairDcmJoxqNA + method: GET + response: + body: '{"name":"d6892df7-2a36-45e4-94e9-db5e7d43c919","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "25" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "26" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "13" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/7f19627c-4608-4252-afad-406b10cb4d49?api-version=2023-06-01-preview&t=638400896358161566&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=hc6Z5Yaudyzxc8EGqza3dP6U7wO_pxwM9h2X90exVOkhsPnWZ_yOU2RyUrY5P4sXYr8DpY0f1hjRzkFgksJWtTcg64524TPhaf7f-jCBO0gI7wcWor7BujTOGiDr9Tek9O9izCYSyDWc2eIcbINMSjgVRXhZd1gLM-NSz25qAwA27szo0f6rTCCmi9cQP3QjVocA-GPyeyslIfwRTONfggRWAcAisOImU1VsS93GBNtWVWPBxcKTtrtl9oIWuyGPh29TYhvcpBJisfM-0jDFS7_YHVCm2hCRJnaKTVuTB5FZ5rGKva-VNf03-qk-tGcSPRE6bWtR85sb3Vn7Q8TwZA&h=a_6yKHJZ5TrWfxzIFBdYguuMVWs3dO15UVYMnXLG9iE + Cache-Control: + - no-cache + Content-Length: + - "88" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/7f19627c-4608-4252-afad-406b10cb4d49?api-version=2023-06-01-preview&t=638400896358317803&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=hi4AkKrh8AyUVBFmIEFgeknSL2FOoXWU64yBqHER26gzU9a7HntD_KL8CVw5e4M5A5drQKKrJOjV7lkyDg9UaUWVTMuh8wH_te61PJSQ8CzdUp3DbvryDCotlngAJOlO1O88vB55NWfAhS2-gtStDOFcDhXHIA6XCkD7vpHFeb35DWIV3l5jVmnNo1uWx-xfhDD-168yXqCjivCtWWQx_c3XQTamOMGXOqO9hHe1bNgsBzbQ-WQO47Vfo8d737WJ_lkRxYKwD99yFh9JTeXMMk9U5EjEjuN4UDP3rDdUTflZcAtBp8vP60EcGayLMCU403VGuJvqn_3UFyXAbCusgA&h=ltE0s3cV07ARe46UEyHXftnylraWFL-47VOCJwl89Sw + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/7f19627c-4608-4252-afad-406b10cb4d49?api-version=2023-06-01-preview&t=638400896358161566&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=hc6Z5Yaudyzxc8EGqza3dP6U7wO_pxwM9h2X90exVOkhsPnWZ_yOU2RyUrY5P4sXYr8DpY0f1hjRzkFgksJWtTcg64524TPhaf7f-jCBO0gI7wcWor7BujTOGiDr9Tek9O9izCYSyDWc2eIcbINMSjgVRXhZd1gLM-NSz25qAwA27szo0f6rTCCmi9cQP3QjVocA-GPyeyslIfwRTONfggRWAcAisOImU1VsS93GBNtWVWPBxcKTtrtl9oIWuyGPh29TYhvcpBJisfM-0jDFS7_YHVCm2hCRJnaKTVuTB5FZ5rGKva-VNf03-qk-tGcSPRE6bWtR85sb3Vn7Q8TwZA&h=a_6yKHJZ5TrWfxzIFBdYguuMVWs3dO15UVYMnXLG9iE + method: GET + response: + body: '{"name":"7f19627c-4608-4252-afad-406b10cb4d49","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "27" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "28" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "14" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/ad35f6a7-41f6-4b04-a474-59d267399812?api-version=2023-06-01-preview&t=638400896392851287&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=X2PmeHI0B2KdASEKRifUUu2l26xDLYSj7iz-rcI5ZnqDo7AftHMlJAY6d2S2og0qy9Cgb5R5qAuxTaMv4UU1nIDdu_wlU3Xz9sIxpzs0B864ihl7EGWZBEiDiRPZsi7sgk0RG_60zzd-c9U9NMYi4y0_9J1cuIcAxuR4kXnBbrIXkKU8RH1r28rCqiT5wc6fvsWAgOcBgwI3jSjkM1a_G76S7s6XlWszK68SMJRH4_IQbD047XIXrZRJdcX2qlEt4LjNRzIGu1CEDiV3Oxt9ux0HMfagO-HfqMysKnrmhXhecEtSNhtLhXOhH7kpl0qq690w_L1CKArG1NCUbGjqQA&h=SVFoLdcRj_Bbdi2FcjVj2fz8rZrKrtl9SPURN6SAt04 + Cache-Control: + - no-cache + Content-Length: + - "88" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/ad35f6a7-41f6-4b04-a474-59d267399812?api-version=2023-06-01-preview&t=638400896392851287&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=C13l1YWKhHZtSWa7cOqmmOuTJ3TgUK4IcYcVMLC7MhYefuQIp6dEGXLo-nqrHSBKXF9Nozn0LwTNmeo_8tI14q1bT-yPd0mt-2XyLZeoRhJxUvWsJgFievvoOiwx9hM30wtFL-129YZ1tX40F5EEPlV9Iud6Xl722TcqKiYALXlDB7jAr_dgwMBWW2o19zpIHpJ0DK8LGfNdjyRIXLc2ZXaqHZJTjFh89sFrpGUUbfQg6mAgTfhelpmZY0KPwx3zklERRMv4upkfJcTLPIWzB2kbR0GC6nfpCTKISwgUFjjSjLyaBllUdek_EvkqR1NlCZpd1IfU7qYo1W0mnvbLlg&h=k-Amq4jAtPFIPnqHdK-O4vQEd6gM3CZQnMVXxHhOlps + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/ad35f6a7-41f6-4b04-a474-59d267399812?api-version=2023-06-01-preview&t=638400896392851287&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=X2PmeHI0B2KdASEKRifUUu2l26xDLYSj7iz-rcI5ZnqDo7AftHMlJAY6d2S2og0qy9Cgb5R5qAuxTaMv4UU1nIDdu_wlU3Xz9sIxpzs0B864ihl7EGWZBEiDiRPZsi7sgk0RG_60zzd-c9U9NMYi4y0_9J1cuIcAxuR4kXnBbrIXkKU8RH1r28rCqiT5wc6fvsWAgOcBgwI3jSjkM1a_G76S7s6XlWszK68SMJRH4_IQbD047XIXrZRJdcX2qlEt4LjNRzIGu1CEDiV3Oxt9ux0HMfagO-HfqMysKnrmhXhecEtSNhtLhXOhH7kpl0qq690w_L1CKArG1NCUbGjqQA&h=SVFoLdcRj_Bbdi2FcjVj2fz8rZrKrtl9SPURN6SAt04 + method: GET + response: + body: '{"name":"ad35f6a7-41f6-4b04-a474-59d267399812","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "29" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "30" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "15" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/05d4a117-9e22-4a1f-b525-ddd1f0fb1ee8?api-version=2023-06-01-preview&t=638400896427853480&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=KEJrglnOGIdXRzluo5jBDx_I4FeNftbKMd3Qb3HUmDJ17j3GiPcV56yW4k4yeEvyhoz5GunhO1c8loisAb2cDYbJnbzo2mhfmuO6IWEX4JMycAxzob0g7QwHfgnXQbGRfgdSp6mim7ukKZWR2RL3BMw2zGJWH9ArLVytMRzqSS3hn5NSJpj3-RVGsN1pAr0w_KeceKV_4Caq10UKJKI1doKyUE05e6Wor2iFiLC3SUEudxR6WiGF4aBDN8IoqBU7vvNqZ15nrvg-90w2xvsjlqWdPn7FS0zyHmtn215mqqzyQa6BeiHDgs5_SJ2TkH6lRxFDx3Q8tnsGOTQ4kOqp7g&h=vmey6xsO4PiHIKat3Agb93oHhfGHoCxzrqwXc-Xvz18 + Cache-Control: + - no-cache + Content-Length: + - "88" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/05d4a117-9e22-4a1f-b525-ddd1f0fb1ee8?api-version=2023-06-01-preview&t=638400896427853480&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=mEHmY3gis4BcaJdoWaSTihEZBuRje-YkUmBW4UUdkfMNQA6la0g8k4CAIK0XB76n1e45vs6yuWyVBHmTSD6ueu2yXlEGcXWlkRQgDau-f7y7pnTWW8GdhLMY2d_rjbJjylmGxWG28P7xrFItGKGkddwu3goLxtZgRL5UDPjr2GYecckY6yLWHSpiTaNKb4pzB0n59uga1wnHWrzlwrFmvfVAF2GgkFRvu29qDEA-svpONtj5MYMyZ0qkKjV0p0HiSK1MUHpo_PSa6vRh3TTK0vYykBtGy__DV3YnADGZm9sU5VfWIgd0_6N3vcFYIem6TkpdtCGKZJvpxISiPinPUg&h=7sNIKl8zhWYCBFTJEOTah0X7wlK7la8r8W3QxTOASuc + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/05d4a117-9e22-4a1f-b525-ddd1f0fb1ee8?api-version=2023-06-01-preview&t=638400896427853480&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=KEJrglnOGIdXRzluo5jBDx_I4FeNftbKMd3Qb3HUmDJ17j3GiPcV56yW4k4yeEvyhoz5GunhO1c8loisAb2cDYbJnbzo2mhfmuO6IWEX4JMycAxzob0g7QwHfgnXQbGRfgdSp6mim7ukKZWR2RL3BMw2zGJWH9ArLVytMRzqSS3hn5NSJpj3-RVGsN1pAr0w_KeceKV_4Caq10UKJKI1doKyUE05e6Wor2iFiLC3SUEudxR6WiGF4aBDN8IoqBU7vvNqZ15nrvg-90w2xvsjlqWdPn7FS0zyHmtn215mqqzyQa6BeiHDgs5_SJ2TkH6lRxFDx3Q8tnsGOTQ4kOqp7g&h=vmey6xsO4PiHIKat3Agb93oHhfGHoCxzrqwXc-Xvz18 + method: GET + response: + body: '{"name":"05d4a117-9e22-4a1f-b525-ddd1f0fb1ee8","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/05d4a117-9e22-4a1f-b525-ddd1f0fb1ee8?api-version=2023-06-01-preview&t=638400896427853480&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=KEJrglnOGIdXRzluo5jBDx_I4FeNftbKMd3Qb3HUmDJ17j3GiPcV56yW4k4yeEvyhoz5GunhO1c8loisAb2cDYbJnbzo2mhfmuO6IWEX4JMycAxzob0g7QwHfgnXQbGRfgdSp6mim7ukKZWR2RL3BMw2zGJWH9ArLVytMRzqSS3hn5NSJpj3-RVGsN1pAr0w_KeceKV_4Caq10UKJKI1doKyUE05e6Wor2iFiLC3SUEudxR6WiGF4aBDN8IoqBU7vvNqZ15nrvg-90w2xvsjlqWdPn7FS0zyHmtn215mqqzyQa6BeiHDgs5_SJ2TkH6lRxFDx3Q8tnsGOTQ4kOqp7g&h=vmey6xsO4PiHIKat3Agb93oHhfGHoCxzrqwXc-Xvz18 + method: GET + response: + body: '{"name":"05d4a117-9e22-4a1f-b525-ddd1f0fb1ee8","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "31" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "32" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "16" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/842548f4-c68f-4c70-82f8-0f3a47c80d22?api-version=2023-06-01-preview&t=638400897067738134&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=Fw20r_toAaLBLnvxujF35sQBMczOq2cDI5N7EIBA_at0BvGHW-AhL2eJyNV_FoXS0zWxfaaRd-ehTpg-VQQuvpBpjX-24g0UgRr9ljWOB5Hh4MZzCxNbKGSQHwK2Ezngk61xdXv5WNngWJNfS1rY8eYOyPvVWkhkK9un2tOazOR-je2_U4tmOb1tXCAqS-UV5LwEnZw7MSNm5RLEOvcUoxwsQ9XC1NeSrG60ILv-p4HxSioSWHQnHQzKZuDQHDifKYVv9WAD0dLYH2ZBtDVpgqT8aHriGm7pMwSctX6ABPMNiNXzYe-itR_4OHNbvrGacUY6SHeQG1WAAnR8P_QZXw&h=75xNP0DkC0NYj5l3wLzYeqma0oZMcV2T6bSDVmto6FY + Cache-Control: + - no-cache + Content-Length: + - "88" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/842548f4-c68f-4c70-82f8-0f3a47c80d22?api-version=2023-06-01-preview&t=638400897067894385&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=abnw-R2eYOqg8cuZPl848Q1pOuid2BUrP1PSRSVCjwgfPCqPgbnSf1tCKCXoSyu37MfFmiAwQBKCIENa29hxNoKTf_bv1Kx0oh8Fysn9uBDRQLxlk-jiyLrDHAw8BMyUeVHdsqrL8vXltb0oyToQo1WblSZkSL7BQ6AIi5bbXLDlmCAyTrdPdqNQQeC_7niyXY9bRjvJ5tp82cwX70tbhmPk90Em_ZAmmPqJqwTjs0JtHrRjgsfm6LU9PxxWEodPs019SwfVzt90I8YULXc2APDDrqyXN6QDmCXMXCE098lLP_1TJwJiAidiW6Ulfd0jJLdx07T84yXyMacO85G-MQ&h=fxHkT3SU_-j2_ltn0-FhLIFg2_X6X_Q8CP_U69WoJT0 + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/842548f4-c68f-4c70-82f8-0f3a47c80d22?api-version=2023-06-01-preview&t=638400897067738134&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=Fw20r_toAaLBLnvxujF35sQBMczOq2cDI5N7EIBA_at0BvGHW-AhL2eJyNV_FoXS0zWxfaaRd-ehTpg-VQQuvpBpjX-24g0UgRr9ljWOB5Hh4MZzCxNbKGSQHwK2Ezngk61xdXv5WNngWJNfS1rY8eYOyPvVWkhkK9un2tOazOR-je2_U4tmOb1tXCAqS-UV5LwEnZw7MSNm5RLEOvcUoxwsQ9XC1NeSrG60ILv-p4HxSioSWHQnHQzKZuDQHDifKYVv9WAD0dLYH2ZBtDVpgqT8aHriGm7pMwSctX6ABPMNiNXzYe-itR_4OHNbvrGacUY6SHeQG1WAAnR8P_QZXw&h=75xNP0DkC0NYj5l3wLzYeqma0oZMcV2T6bSDVmto6FY + method: GET + response: + body: '{"name":"842548f4-c68f-4c70-82f8-0f3a47c80d22","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/842548f4-c68f-4c70-82f8-0f3a47c80d22?api-version=2023-06-01-preview&t=638400897067738134&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=Fw20r_toAaLBLnvxujF35sQBMczOq2cDI5N7EIBA_at0BvGHW-AhL2eJyNV_FoXS0zWxfaaRd-ehTpg-VQQuvpBpjX-24g0UgRr9ljWOB5Hh4MZzCxNbKGSQHwK2Ezngk61xdXv5WNngWJNfS1rY8eYOyPvVWkhkK9un2tOazOR-je2_U4tmOb1tXCAqS-UV5LwEnZw7MSNm5RLEOvcUoxwsQ9XC1NeSrG60ILv-p4HxSioSWHQnHQzKZuDQHDifKYVv9WAD0dLYH2ZBtDVpgqT8aHriGm7pMwSctX6ABPMNiNXzYe-itR_4OHNbvrGacUY6SHeQG1WAAnR8P_QZXw&h=75xNP0DkC0NYj5l3wLzYeqma0oZMcV2T6bSDVmto6FY + method: GET + response: + body: '{"name":"842548f4-c68f-4c70-82f8-0f3a47c80d22","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "33" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "34" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "17" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/f15517fd-7ae7-4d71-a970-7c26164a7a09?api-version=2023-06-01-preview&t=638400897707779033&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=jHCOlmkEtgmrT-qa2D39avHZnAUb9aZIXDl0bx7rG09BlIo5mM8T0bvuWFeBrRySNXdsq7SYN5rE60lBYx989H4m6_0QREGgUJHeYfU7Sjrfr1Y7mHe7g_wX-7INKGaMHCYzT2TNkWg5dabdfYnasGZB4KPv4-RQ7vpnPiP4dHru-AG7FVvtqOovZyoxe0819hF7cZuaDRpXjAC5OLGmt825CGyFewFSjaWxhUi4dut989ymF-LgQWONyPv2H6jQGm6V24U_ZfuMp1zN5iH04dZMdNABY7gvwC9y3E-1yMcrcTiEZtN2XHBMmKXns00A-H-lHsqF6pONZ39PUsAfPA&h=thIPKpIRx9t7hYJTmpQ9fg4T9kVC6LRt76iACfX3HLo + Cache-Control: + - no-cache + Content-Length: + - "88" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/f15517fd-7ae7-4d71-a970-7c26164a7a09?api-version=2023-06-01-preview&t=638400897707935316&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=OCVD4aiG7MeaYvY2JP5-75deO2SI3om13ZwfheGWdMKPJwgQJqoSp32usl9pb9Y6f8l2vrfbi-GD_UD0-6-eXbAGqYViF3AIoZTXHYt52dsAi_dXi4bccM9aQN8VkvsRqDmUybLUbD_b5POabNFNBLW_7WNwNzIV3H5HQ7kxlr6YNeQgbaSRyWLIY9BxPBj-3pc2wa-TB3uhOYPJES70RBcD3LUSy-jUa59YiNPfLz7IlqglJfg5I4EBrjGkeRxEsborekGdyVylfTuH1FFavc4T_5kq-gZzkniDxU99_3P08keXuvaaHG_l2wh5SThr_yjZFaWwvpBG23-vjtpx4w&h=aXSAJ8Ba7gq91G4zJ-ltHKA9A5RMZQ9W2grczYC6Dps + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/f15517fd-7ae7-4d71-a970-7c26164a7a09?api-version=2023-06-01-preview&t=638400897707779033&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=jHCOlmkEtgmrT-qa2D39avHZnAUb9aZIXDl0bx7rG09BlIo5mM8T0bvuWFeBrRySNXdsq7SYN5rE60lBYx989H4m6_0QREGgUJHeYfU7Sjrfr1Y7mHe7g_wX-7INKGaMHCYzT2TNkWg5dabdfYnasGZB4KPv4-RQ7vpnPiP4dHru-AG7FVvtqOovZyoxe0819hF7cZuaDRpXjAC5OLGmt825CGyFewFSjaWxhUi4dut989ymF-LgQWONyPv2H6jQGm6V24U_ZfuMp1zN5iH04dZMdNABY7gvwC9y3E-1yMcrcTiEZtN2XHBMmKXns00A-H-lHsqF6pONZ39PUsAfPA&h=thIPKpIRx9t7hYJTmpQ9fg4T9kVC6LRt76iACfX3HLo + method: GET + response: + body: '{"name":"f15517fd-7ae7-4d71-a970-7c26164a7a09","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "35" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "36" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "18" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/75d4aea5-a29e-4432-b174-61575ee22b49?api-version=2023-06-01-preview&t=638400897742156204&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=N8r64pLB5sZ5FwWvn5iGKytFmhVh1LhEqPbv8Jw-lodUFXvFYFgQ01iLmG_Avlu_IVIk0TcqeYrE5ecR_Bcr1e5ORBZrMyrWatZDG7u4e5hENigdLsiVCxYV0fojbFaKuNC504B8z0SZRu8uiurbuHn5MDhsc79ZBFrF-w0E1RMuiU-7CDhUngpzMauLdZMyNWu95YenPjP5NhyRzYw1iyzTKy2JLLsCVd9Wjg5eP5za7K9_Ns2Gf0cszeA5RlHb-5RPJI-1YuGT1blXW3zlNC_V_GqQlgrkM1N_by41ULSwDP71fABfL84ROc2brUNOMWEJMx4sW9eljBfW5UMW3A&h=4N6XFILhmcFHGEDMfSDOcB63PFzJWdN1tP1LOjFTWOc + Cache-Control: + - no-cache + Content-Length: + - "88" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/75d4aea5-a29e-4432-b174-61575ee22b49?api-version=2023-06-01-preview&t=638400897742312466&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=l5Xkts8Zcp63VWPIvNQ9UFiBpvpB3Mk6SpfJ6RIyEXpboNqgvfHN303mtpxa6zr4JvnPB8WBMEqgLc8qWOqnVZiTE-j3GO9v_TLqFXOqU71dXmFwORjGpfhVwr61PejLZ_czzSXrHp3BHnYMUj-RDJw68uOSlo904XdfSuuA_uzF7yIPSx3e22N9DWkyvAJqlNyqHKq6FZ9BKhP_HLsnoOZbF_c6s_qBserA1SPuVYAKPaL-zzN69FIaNjDLQDgXWBjAV_406fcAcdwdMYmezEB3uIs8M63FHbR6kWEZmTOYGQe0v5zYoc-mO2siffyn2Hu9AgKQk-_chceHeQ-tpw&h=HVZ-WDJKO4K9APalUWVew2Cogrj1rPgu6XHTbI-0ozo + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/75d4aea5-a29e-4432-b174-61575ee22b49?api-version=2023-06-01-preview&t=638400897742156204&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=N8r64pLB5sZ5FwWvn5iGKytFmhVh1LhEqPbv8Jw-lodUFXvFYFgQ01iLmG_Avlu_IVIk0TcqeYrE5ecR_Bcr1e5ORBZrMyrWatZDG7u4e5hENigdLsiVCxYV0fojbFaKuNC504B8z0SZRu8uiurbuHn5MDhsc79ZBFrF-w0E1RMuiU-7CDhUngpzMauLdZMyNWu95YenPjP5NhyRzYw1iyzTKy2JLLsCVd9Wjg5eP5za7K9_Ns2Gf0cszeA5RlHb-5RPJI-1YuGT1blXW3zlNC_V_GqQlgrkM1N_by41ULSwDP71fABfL84ROc2brUNOMWEJMx4sW9eljBfW5UMW3A&h=4N6XFILhmcFHGEDMfSDOcB63PFzJWdN1tP1LOjFTWOc + method: GET + response: + body: '{"name":"75d4aea5-a29e-4432-b174-61575ee22b49","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "37" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "38" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "19" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/4c9bf90a-e956-4087-a4c7-b75390c88495?api-version=2023-06-01-preview&t=638400897776220907&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=GlO5S6e_KEPwGGn4V4Mt8UmGMxWz6n2cBxFVXc3BcqoXX6mqZkX8wmZR2-SXaNSngtjz1x6fImYa4jGsh-GtM5HFGNV6BX9bLni5nyQgGWZmmhwmJ-uxFBbmpyKi01kkOgeLgmfQ16blqgIORZavDEWHWKsTS4H0Yap0M-hgfUSXXx-0EPi4r8gF03jt4773conszIXWO0gwILKBUQJ0NAXuPufVtVJ6qymN5eXQhRp3KYs4a8vvHjJNtbgIpO-Ca0RIahFrSlHV8cYVrar5ROGjSrwcka9JgZdURXFOOfbYGVkdz1K_Y5NwSfBaYiKCEkMIn7tHl6GcEQZ5jfTRwg&h=1cIbzOJ7PvXhy9cX5s7rtukiEe3W5zpavQRlnbo9UzE + Cache-Control: + - no-cache + Content-Length: + - "88" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/4c9bf90a-e956-4087-a4c7-b75390c88495?api-version=2023-06-01-preview&t=638400897776377188&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=mpY5bHV6RgjDslYSB5Nep6TyJgAF0mIBP-jbCz1rJMkb4lfAv_4pajSzaVLWTNf_H_YqSlGt5qTA9BpG7O4h8BbJY2fS6m05GHYeZoEP4piXOZfAZDCYffoJCirpYgvVqjZ4n9NUECIqaY-ZPJhEJH4_uIlkYZDp2i58KP5McJr82aI6BcmOGzKWp0XPc4PBPBaeTwne7tvQ_8BPOZwK3I9wjRMr1fglTcpbAPpgZiCGdX4wbG6ECeb-AxHczPxFzg-6gaOTxGcFNBCEN8aIrhDFebfy84NrI6i_eFjnEWzMhH4bm313GX1g4Angmf4EcHmG3SyP-hSjnPF6DGdh-A&h=PY5cd9gtVJYMguFZkHsFlS4sFVbbEuqXVogaXLGFVm4 + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/4c9bf90a-e956-4087-a4c7-b75390c88495?api-version=2023-06-01-preview&t=638400897776220907&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=GlO5S6e_KEPwGGn4V4Mt8UmGMxWz6n2cBxFVXc3BcqoXX6mqZkX8wmZR2-SXaNSngtjz1x6fImYa4jGsh-GtM5HFGNV6BX9bLni5nyQgGWZmmhwmJ-uxFBbmpyKi01kkOgeLgmfQ16blqgIORZavDEWHWKsTS4H0Yap0M-hgfUSXXx-0EPi4r8gF03jt4773conszIXWO0gwILKBUQJ0NAXuPufVtVJ6qymN5eXQhRp3KYs4a8vvHjJNtbgIpO-Ca0RIahFrSlHV8cYVrar5ROGjSrwcka9JgZdURXFOOfbYGVkdz1K_Y5NwSfBaYiKCEkMIn7tHl6GcEQZ5jfTRwg&h=1cIbzOJ7PvXhy9cX5s7rtukiEe3W5zpavQRlnbo9UzE + method: GET + response: + body: '{"name":"4c9bf90a-e956-4087-a4c7-b75390c88495","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "39" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "40" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "20" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/59805149-66c1-4489-b113-b4dcfe28e5b6?api-version=2023-06-01-preview&t=638400897811066881&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=h3VcKhngm4JWzAlaJrCdFTD71ZPZft1f47aeuQYRHJiZCWWRkwADt_RxLYQ2ziztErkwkw0YwglFx8XnnQDagLOQFd7xl-dGZm3Wygb-yKPdBx3Xg1NBFlURwPGAr0ZkULLXS-PCKzim37GO8jv1sCn7XEePlBkK1Kiloollt_UkBRWajUz7uC03nddzhPQl8NEO083lWKTl5oUPrjcgrQbdS5V8tJv2G4Uujo48lz7cgdaVFRTESO8zdWfRnVlwWY6p2KLs-F1IUvo2qgSfJEt_6zayobPfjhsUHKKzKr_eKFjvBkA34jMGny007UC_9kndIS3UJpca5bOzQS4gxA&h=Wnu3sEKzZrr1aT1G8uoaZvhfRVr6kcrkjY-KrP_YctQ + Cache-Control: + - no-cache + Content-Length: + - "87" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/59805149-66c1-4489-b113-b4dcfe28e5b6?api-version=2023-06-01-preview&t=638400897811066881&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=d-n6AScWx8eB_pVo3W0eeqyIwgKqvObTpM-AcP1AtRyG-IN4k2cBut_cSaRT458tMO8cyymcIsPkUXY7r6o50ZrhpXNoPD4paxVS7b-HjMLL1cXz_bnVcx1yB2dAlM3DG-FUdYHUxUV5WArB8EqgaPmtm8tttHIE0dBAEM9ePuyqnKUnz3udM4CxNmudUpFwHsrh3za57fD36IW8dXdVlojejX5xPpRwz3COPgnqm9yuAeOPmfjuTQb2zNODx_oG0dYi5N_kMPL_wygDm-hHG17C7ZbO3uqsR99ssTJCL_4ZmHKFkPIMsQKwYQGR4q-5EdKmvuHSauVkGbyHQozX2w&h=FiYZmUSyNrvNll24k3xk9p-h8mylJx0aVpB4YrrauFs + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/59805149-66c1-4489-b113-b4dcfe28e5b6?api-version=2023-06-01-preview&t=638400897811066881&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=h3VcKhngm4JWzAlaJrCdFTD71ZPZft1f47aeuQYRHJiZCWWRkwADt_RxLYQ2ziztErkwkw0YwglFx8XnnQDagLOQFd7xl-dGZm3Wygb-yKPdBx3Xg1NBFlURwPGAr0ZkULLXS-PCKzim37GO8jv1sCn7XEePlBkK1Kiloollt_UkBRWajUz7uC03nddzhPQl8NEO083lWKTl5oUPrjcgrQbdS5V8tJv2G4Uujo48lz7cgdaVFRTESO8zdWfRnVlwWY6p2KLs-F1IUvo2qgSfJEt_6zayobPfjhsUHKKzKr_eKFjvBkA34jMGny007UC_9kndIS3UJpca5bOzQS4gxA&h=Wnu3sEKzZrr1aT1G8uoaZvhfRVr6kcrkjY-KrP_YctQ + method: GET + response: + body: '{"name":"59805149-66c1-4489-b113-b4dcfe28e5b6","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/59805149-66c1-4489-b113-b4dcfe28e5b6?api-version=2023-06-01-preview&t=638400897811066881&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=h3VcKhngm4JWzAlaJrCdFTD71ZPZft1f47aeuQYRHJiZCWWRkwADt_RxLYQ2ziztErkwkw0YwglFx8XnnQDagLOQFd7xl-dGZm3Wygb-yKPdBx3Xg1NBFlURwPGAr0ZkULLXS-PCKzim37GO8jv1sCn7XEePlBkK1Kiloollt_UkBRWajUz7uC03nddzhPQl8NEO083lWKTl5oUPrjcgrQbdS5V8tJv2G4Uujo48lz7cgdaVFRTESO8zdWfRnVlwWY6p2KLs-F1IUvo2qgSfJEt_6zayobPfjhsUHKKzKr_eKFjvBkA34jMGny007UC_9kndIS3UJpca5bOzQS4gxA&h=Wnu3sEKzZrr1aT1G8uoaZvhfRVr6kcrkjY-KrP_YctQ + method: GET + response: + body: '{"name":"59805149-66c1-4489-b113-b4dcfe28e5b6","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "41" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "42" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "21" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/3c913cb6-aa67-458f-8446-1d4df64b0c10?api-version=2023-06-01-preview&t=638400898451107794&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=eKy7sYHizgIg3hpVIRwT1U1xJ0QFtKnKuOCqzbahu3qx44k-z7DDiVGLA9CkvowCGwVwp7PHYm30cMnIA7FsyV26SpJnhZ0mjXmaTSHD_D7YGuxEFHFMaXhd5k34zG-kCPOlu9Y_Gema4JyayXy27g77Ey-uTQ4dgeHdcrXGT98jQ3p5FBaCwZt25PfoH8J5ElVaz0sdZjnGn_nabOIlYpUtBLmcy3JvEQI0uowynoj2KXayyxQzWsZ_krcHviA-Q1mYMBN8MLnf3eW7yCWxtP-76rZzaXVYUdAwrIZDeLRraI9_psQ9ddynAkGpe5gn5ZEVcUVKkGytRYvlPGK1-w&h=DDZ77K4dOARBNe2pjhzYlbDCdMba97FnNagGHoDlmxs + Cache-Control: + - no-cache + Content-Length: + - "88" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/3c913cb6-aa67-458f-8446-1d4df64b0c10?api-version=2023-06-01-preview&t=638400898451107794&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=MFcRmT0aFPGcyP6c8_f60_U_fqaLSGabWIZzCqV3F61DT4X-oCx8Z-VUsGSNe6hOeg35wdzihn8DDrc3IZsNAWkgGxrbchpypiaT5vKxtZHhK_Gp3Y1S4-pWCwF75aoQsZHUPfd6G9y3r6_B4RMUEBMP8k7LxXmmYtVX3XyAP8G3JPLWih3-nGtmEOZMQ-bXhiY63iIgv3HqawM_7jfche185owtEGxFx5R3I0ywMvUEvN5ramVZVD2tgjHB9_VqdJR9sgQ_ZQCAgQWwD8VEEsYMcK2wws8ngbTngaRxF0ZVBSnSQkFnAIgtBgP21xu6IA_c_pPnV2uLGE3MQ2sprg&h=Yh0yL-6aXv6uhVHqGZusPKx_8su9r0QYimQ82vPj7g8 + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/3c913cb6-aa67-458f-8446-1d4df64b0c10?api-version=2023-06-01-preview&t=638400898451107794&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=eKy7sYHizgIg3hpVIRwT1U1xJ0QFtKnKuOCqzbahu3qx44k-z7DDiVGLA9CkvowCGwVwp7PHYm30cMnIA7FsyV26SpJnhZ0mjXmaTSHD_D7YGuxEFHFMaXhd5k34zG-kCPOlu9Y_Gema4JyayXy27g77Ey-uTQ4dgeHdcrXGT98jQ3p5FBaCwZt25PfoH8J5ElVaz0sdZjnGn_nabOIlYpUtBLmcy3JvEQI0uowynoj2KXayyxQzWsZ_krcHviA-Q1mYMBN8MLnf3eW7yCWxtP-76rZzaXVYUdAwrIZDeLRraI9_psQ9ddynAkGpe5gn5ZEVcUVKkGytRYvlPGK1-w&h=DDZ77K4dOARBNe2pjhzYlbDCdMba97FnNagGHoDlmxs + method: GET + response: + body: '{"name":"3c913cb6-aa67-458f-8446-1d4df64b0c10","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/3c913cb6-aa67-458f-8446-1d4df64b0c10?api-version=2023-06-01-preview&t=638400898451107794&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=eKy7sYHizgIg3hpVIRwT1U1xJ0QFtKnKuOCqzbahu3qx44k-z7DDiVGLA9CkvowCGwVwp7PHYm30cMnIA7FsyV26SpJnhZ0mjXmaTSHD_D7YGuxEFHFMaXhd5k34zG-kCPOlu9Y_Gema4JyayXy27g77Ey-uTQ4dgeHdcrXGT98jQ3p5FBaCwZt25PfoH8J5ElVaz0sdZjnGn_nabOIlYpUtBLmcy3JvEQI0uowynoj2KXayyxQzWsZ_krcHviA-Q1mYMBN8MLnf3eW7yCWxtP-76rZzaXVYUdAwrIZDeLRraI9_psQ9ddynAkGpe5gn5ZEVcUVKkGytRYvlPGK1-w&h=DDZ77K4dOARBNe2pjhzYlbDCdMba97FnNagGHoDlmxs + method: GET + response: + body: '{"name":"3c913cb6-aa67-458f-8446-1d4df64b0c10","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "43" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "44" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "22" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/267ec3b3-5177-4f09-bf31-d19744d64b79?api-version=2023-06-01-preview&t=638400899090679899&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=ejQmDEWBIQ1C3YIlxoslWt2Btu9e1SO4JVfv3CvpLA0qt-RMSzK1YXnlOvx6gX4CpU1SdAv0pIQGi03DKNgYO6hdFyyT2mkNiHxbpzODcQNioNjxtBADI16vWy5dWi2K43zplufYRiVmD28Lcwt-cJVun9VgkuqtcEtAbqJ7y5fKJYJQn7rPL6jVKboAcn-in7tgv0x9w_5D4Nu_MH7EZWs89WD-zZN5HcxgLw9t5ZeTTmty8nbXkUkgBSrFLH1Yudp6Dmve9RevXxn4zHx7nz54_t6MkJDYr8qZmnTe9UBZeYLUFyGPT9NSR0YDc26UGex7GUIuQ7yLmPVHgBOgHQ&h=-Rs441pffBiVKFnGcuVPf3RB9IakHqYbtv7fzosr8Fo + Cache-Control: + - no-cache + Content-Length: + - "88" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/267ec3b3-5177-4f09-bf31-d19744d64b79?api-version=2023-06-01-preview&t=638400899090836190&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=Yii670MsooaILZih8C49iDWps5oqI-_kd6WKxFp7mfuuqLLQs2QQZ4Rwyo2j-8pY9r91xh_K3AtNgYMi_S0HDoiVwSYqVtcNSGtRMFb2gfdGQmFzTXUcO8-ODNZK2HmVBJxQtgq6onb-Z0Sw8__UWLwWU3OYgVO8K2lqadTrvfr2dr-ZRZICSWUmMsozji1moiXVi2Muq4ymS9A8nE5kSvU4EkTNVfkPxLVZ_GF21AESxg_ESzXKJB8Mo-4Sa0b4rPQBzaLfolEf_UCfUstSfOc1Vy8T3DQb3jH4_wqEKRJ7-3gpRXoU03YLZh1uQWYh1ehW_Lpp3WmfpkAOSCjuxg&h=-DpNaPye-9Ban3pRv_yYR_yn_daG5M1thv_8akwo6TU + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/267ec3b3-5177-4f09-bf31-d19744d64b79?api-version=2023-06-01-preview&t=638400899090679899&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=ejQmDEWBIQ1C3YIlxoslWt2Btu9e1SO4JVfv3CvpLA0qt-RMSzK1YXnlOvx6gX4CpU1SdAv0pIQGi03DKNgYO6hdFyyT2mkNiHxbpzODcQNioNjxtBADI16vWy5dWi2K43zplufYRiVmD28Lcwt-cJVun9VgkuqtcEtAbqJ7y5fKJYJQn7rPL6jVKboAcn-in7tgv0x9w_5D4Nu_MH7EZWs89WD-zZN5HcxgLw9t5ZeTTmty8nbXkUkgBSrFLH1Yudp6Dmve9RevXxn4zHx7nz54_t6MkJDYr8qZmnTe9UBZeYLUFyGPT9NSR0YDc26UGex7GUIuQ7yLmPVHgBOgHQ&h=-Rs441pffBiVKFnGcuVPf3RB9IakHqYbtv7fzosr8Fo + method: GET + response: + body: '{"name":"267ec3b3-5177-4f09-bf31-d19744d64b79","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "45" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "46" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "23" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/4be8e231-4f66-4eee-9dca-25d47fdc4584?api-version=2023-06-01-preview&t=638400899125057103&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=C5gjo6cnHytZTXf2vtTQ-gH5UrGwx4MP67kdwxM617k2Pn45cKPSXsEmGbYNn7bjQunpp0fF2A8Ska5cIqsdCupLIrWWaRaRbA0pI6RdklVne8DmqwEyEYi3thYtJBK-LdmIv9UIiMngTgT7U_jpPh66GSS8h_NrOsh7_Mewfsgn1WEr8TVlSqtDP3voi-ae1zLAaP7qEmth2IqknFF224_nV3ePvcVeINBnIkAZySicM9wfwTpbJSzJLBHmeeoIA2jWHw82bgbQE7-PrHM4H12IJGDJP6YYHq0bVuCwFU0GNd9XEcqkSiFcozZfpWmqRAQiWjjCpU-epcVUZMDtHw&h=EK_WJgvvXGD_8XAaaFAXJMmrVXykV5vJW2Ucqu7H2R4 + Cache-Control: + - no-cache + Content-Length: + - "87" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/4be8e231-4f66-4eee-9dca-25d47fdc4584?api-version=2023-06-01-preview&t=638400899125057103&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=InR6wqObVBfS6U5LQNdV_sA3gdtVWkizVYBhOptH8y1FwHGiVRF_jweWjXrvu3dgXehkJpVq2QuIIwAcs8eMvlG7kNo6h4Ys1eDwLcqGKpKUU7zh2-EFs4fAVpKgGRWPluu7lEj9Ox0w_NCK4WM3i6aW9XKoowURxevzpKwR8TvUXv6lVqI5q833WdPnh-N_KVNkASPQ96_ztCHXjSLg975D3IpFfknKjkL6PWKZ9DUzBk0iUTQwPAbiUffoXftGmIE1mdpW4ChzbPRkeEffqfT2ucX8wVxu2ttTD7vuIXcS4yOtMiWMKvDnzdb2TqZ5Cfr9sWs8h0QxomcPuNVh-w&h=c7_c9k1HxA7L8Sn0B2zfbglu708AY6kIHCBQDtBc2H0 + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/4be8e231-4f66-4eee-9dca-25d47fdc4584?api-version=2023-06-01-preview&t=638400899125057103&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=C5gjo6cnHytZTXf2vtTQ-gH5UrGwx4MP67kdwxM617k2Pn45cKPSXsEmGbYNn7bjQunpp0fF2A8Ska5cIqsdCupLIrWWaRaRbA0pI6RdklVne8DmqwEyEYi3thYtJBK-LdmIv9UIiMngTgT7U_jpPh66GSS8h_NrOsh7_Mewfsgn1WEr8TVlSqtDP3voi-ae1zLAaP7qEmth2IqknFF224_nV3ePvcVeINBnIkAZySicM9wfwTpbJSzJLBHmeeoIA2jWHw82bgbQE7-PrHM4H12IJGDJP6YYHq0bVuCwFU0GNd9XEcqkSiFcozZfpWmqRAQiWjjCpU-epcVUZMDtHw&h=EK_WJgvvXGD_8XAaaFAXJMmrVXykV5vJW2Ucqu7H2R4 + method: GET + response: + body: '{"name":"4be8e231-4f66-4eee-9dca-25d47fdc4584","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "47" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "48" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "24" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/5673b876-b174-4ef4-9deb-a67501359ed1?api-version=2023-06-01-preview&t=638400899159746832&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=gtsyAvYrBEdt4OAooGWoEfK0K2-NAT-TMIEFdfX50ogZiIDgadNjrYympeWfKoeaUk8LoBeopvbbLwpUSA-7uSTg9ZvcUslE_iFZPhe2aAb5h6TQp4zTOZP-JCWt-Pt2Nk3jjHWIHAslv_q2NVN8vWGslEcnIE0MkgTjfnQ0_qyw1B7PGeD9B3_ZsPVBcNEXmkn1ChKhAyTsEO73mRyp5pOrXOSQne_CuXUl4LGX5JAJgEUortvZDtrQP_soCN36_UC5sV2ir1RZoc_4zfLBLhFLi9ulX5_Y5zAybhIowYOb4LR2hu3or59a1uCM1IgdVN4Fn4qE8ujTyuOLd6Bhqw&h=1rtWX1pKqyh4JNmRsIsJPEUSQiwv097GylePEpf_8wQ + Cache-Control: + - no-cache + Content-Length: + - "88" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/5673b876-b174-4ef4-9deb-a67501359ed1?api-version=2023-06-01-preview&t=638400899159746832&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=ZRcN7HJFdPhK3X1nWwxHml3IfiN_tTaz88jTtCDEiy_r4mw0VlmUaeyznIFuhyzDAtEmnqwR1XKPDorYTbyVgby20CWcsIIwUa8AOuLj9W_xx1X2twWVCEnp9M6pMH9cIFFMviHgaddSrHMnTDCRUMRgqE0HUXJM6X4h6-kybW--nQsIbEFxVSXqzLxpPLC0QHC4KeYcr229P9VyETJDE7FLB73EUAcx6RlTjVng7re5YDweYtD2vhtxhuYtjwYcuNjdRXRWBEROhLHGCli9Fo1ZRA3VQ1nBvLpZFo3vdk_U7aXdsyhpEKILp-r66W4kgp5C6yBtf2PE248ajFtkjQ&h=W6CCZxsimbrNuGyqwsx1nbXlBb9XPbg1FfymkZmwGAc + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/5673b876-b174-4ef4-9deb-a67501359ed1?api-version=2023-06-01-preview&t=638400899159746832&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=gtsyAvYrBEdt4OAooGWoEfK0K2-NAT-TMIEFdfX50ogZiIDgadNjrYympeWfKoeaUk8LoBeopvbbLwpUSA-7uSTg9ZvcUslE_iFZPhe2aAb5h6TQp4zTOZP-JCWt-Pt2Nk3jjHWIHAslv_q2NVN8vWGslEcnIE0MkgTjfnQ0_qyw1B7PGeD9B3_ZsPVBcNEXmkn1ChKhAyTsEO73mRyp5pOrXOSQne_CuXUl4LGX5JAJgEUortvZDtrQP_soCN36_UC5sV2ir1RZoc_4zfLBLhFLi9ulX5_Y5zAybhIowYOb4LR2hu3or59a1uCM1IgdVN4Fn4qE8ujTyuOLd6Bhqw&h=1rtWX1pKqyh4JNmRsIsJPEUSQiwv097GylePEpf_8wQ + method: GET + response: + body: '{"name":"5673b876-b174-4ef4-9deb-a67501359ed1","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "49" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "50" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "25" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/9f6320ce-f7dc-49d5-8d90-f24077257d81?api-version=2023-06-01-preview&t=638400899193655891&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=Vr1JYS7Qigys7tMqNKklN-1xmWua5cfZ9DRucovkZMe328nAwZpThNTDVkq5oKs0BtluRoep6BWqCbdLTnEAYvfgMUKt_larYkIYRCBhi0XIkaR_zXNx0iipFXjU50XnLowH9XGmMIrAuUAwaLLMedRrd4NKslE7EBpF5wANHv-uK_fYmoB_iZKjtjtVDmCirChBibOJqAMjXG4XEuJ7DlP-c8x140rA-2vCTfQEoWq3AsH0q4jQ3Rm_YLYUGWIINZ-_5i3Cv5A-Enc85uJQDw1nSv9KBtUP2SG0kk5yjmFxqTVd3qBc02CjBiTj8F48gLjn6WR6KgvKVF7ZF8Xijw&h=bAbwOAu5ucMDC7GYp3cQpdl_0oCmv14RkzMXc_MWC6w + Cache-Control: + - no-cache + Content-Length: + - "88" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/9f6320ce-f7dc-49d5-8d90-f24077257d81?api-version=2023-06-01-preview&t=638400899193811521&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=m_FOVlaB9MaPe9uvcxsz9YXCwyuD2q2HP5j41qMBISvj6cXs81wmCHzy0YVpPc8XRDNuIIBgX3aMnVsLhOLNCUHvW2nrngIkPIBsNp9l25eU_berricCHt2IZlEhL9zKU5NxdOQAKa7KFwznhiWr2cD6Gnf7d6-NClHxDOirAGRPA8kcRxpmfENgKvpHMWFN6LTEST2p7DuDpTZ9NO5xmKay6EcanGg3dltcEt3VWJne66e9-G0EFvR28qfaM8rx4gozw6nYUmXJ_aWSAIBYYKmclcWk6affiiYrpyOP3Y-3TFXNQ_qVpra6Ont3ryXfdluS68a0IHgotO5ZALzhbw&h=m30sIDHAqVHkyvU31drdotPQ3A8prZrE5q4sQoN-Z0A + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/9f6320ce-f7dc-49d5-8d90-f24077257d81?api-version=2023-06-01-preview&t=638400899193655891&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=Vr1JYS7Qigys7tMqNKklN-1xmWua5cfZ9DRucovkZMe328nAwZpThNTDVkq5oKs0BtluRoep6BWqCbdLTnEAYvfgMUKt_larYkIYRCBhi0XIkaR_zXNx0iipFXjU50XnLowH9XGmMIrAuUAwaLLMedRrd4NKslE7EBpF5wANHv-uK_fYmoB_iZKjtjtVDmCirChBibOJqAMjXG4XEuJ7DlP-c8x140rA-2vCTfQEoWq3AsH0q4jQ3Rm_YLYUGWIINZ-_5i3Cv5A-Enc85uJQDw1nSv9KBtUP2SG0kk5yjmFxqTVd3qBc02CjBiTj8F48gLjn6WR6KgvKVF7ZF8Xijw&h=bAbwOAu5ucMDC7GYp3cQpdl_0oCmv14RkzMXc_MWC6w + method: GET + response: + body: '{"name":"9f6320ce-f7dc-49d5-8d90-f24077257d81","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "51" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "52" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "26" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/13ea61fb-cc63-486e-bf7e-b2bc05334057?api-version=2023-06-01-preview&t=638400899228032436&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=hxmaVHaZ-HEQ86NAo_7eD-bPqBIYeq5vaLEAb4qBP72RHzkogFEauyKbRePBVpzooYvqKTU6HyCU6xGr6X92QjmGNPqGuYy9PMli8kUMHsoutwn3T5zpeTuEQwFN0QBp_InEktclBrcKWSZCwvKGQWSa-C9HdNiOdo1TiPZKVkg2iyYw5ag834ZCnvBxRL0JA4Q3GinlflVKwJox4OVcycUli7z26QFG3Xkhd5twf_lITCZb28SlgVAPxseUm1EWw763zasmA5y4bibIoCqyuj3rltq7XTkmue_L9b5ErIil-qAkqrlXgiwe90Lk5-KyadK1VoOdpHQGucZQ7eoTiw&h=aTg4aHzyIQCy4YMS0jk_4q_EFHCqZNc6_Tm3W4FIYHM + Cache-Control: + - no-cache + Content-Length: + - "88" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/13ea61fb-cc63-486e-bf7e-b2bc05334057?api-version=2023-06-01-preview&t=638400899228188698&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=VKCRiIGvKauX8QBbDaxuyAXFBGVl_TerKHd7VkrhF0dBADqHu0yhwNWPkM4EnkWahC5_SKAtPtfKIBcoTspJFPytxMt8Flf0NW2SwhMQal2Ge8rhdQq6svpL1ohPRl9H8kerwYSBs5YwlHPs65qJrCcwjFFS0hgl2i1-SSFRi67O8AXhea2-bhEy6R8Ze_i70wil8Ee_jFHHTb51lxYjW-f-5jCthgV7hkHHn-eIirlnYtUsY9wSfeZ9Al2g4scSUuEH58ZpNeGmt9v-kF5kEbygU1FUh4M-45Tv8jHO4OIm3knVKGpKaJ1zS0nve5SPG9EyB-Yv8y6b9M0Gmacf3w&h=FHh9C2X1RDALyF9FL7ti9bEFtcx5jGEj2KDZm6z1EGs + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/13ea61fb-cc63-486e-bf7e-b2bc05334057?api-version=2023-06-01-preview&t=638400899228032436&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=hxmaVHaZ-HEQ86NAo_7eD-bPqBIYeq5vaLEAb4qBP72RHzkogFEauyKbRePBVpzooYvqKTU6HyCU6xGr6X92QjmGNPqGuYy9PMli8kUMHsoutwn3T5zpeTuEQwFN0QBp_InEktclBrcKWSZCwvKGQWSa-C9HdNiOdo1TiPZKVkg2iyYw5ag834ZCnvBxRL0JA4Q3GinlflVKwJox4OVcycUli7z26QFG3Xkhd5twf_lITCZb28SlgVAPxseUm1EWw763zasmA5y4bibIoCqyuj3rltq7XTkmue_L9b5ErIil-qAkqrlXgiwe90Lk5-KyadK1VoOdpHQGucZQ7eoTiw&h=aTg4aHzyIQCy4YMS0jk_4q_EFHCqZNc6_Tm3W4FIYHM + method: GET + response: + body: '{"name":"13ea61fb-cc63-486e-bf7e-b2bc05334057","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "53" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "54" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "27" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/fd26e97d-51b0-42e1-928b-adb686fd1fed?api-version=2023-06-01-preview&t=638400899262097088&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=l3eiIyycBK9vkwRwGreYuvWrWVuWE9928Iy9qNulp8rikAYtf6XuzXH2wS263j_9kqvdBSMUwCXBnQwz1yvL-TlVlmDYCQXvsJqzemi44BPpMpgDZIxOEcD4KWWKrjwl9l4-m4hphOFDBPLMey6DTD28POL9_ifxRiZgafLsENm7S306c4yZ4IERyotj9SAzGJrT2Lzwq-LisVJm5M-U62ut1KDzSRuSloqdnx4PvFO-xYbXCoK8FU3XO747PpP1TlYNG9WtsnucSmLEaREJtNdilr4oPBvgkVbLEfzf_UwNXasNcLZwm03AhwPnsHKswKiPWKeczXBe4EtFj0IWTQ&h=J0gsMUL0Cn4R_5qtbYMAED2hoDvB7uRv4lcgOZJPDcU + Cache-Control: + - no-cache + Content-Length: + - "87" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/fd26e97d-51b0-42e1-928b-adb686fd1fed?api-version=2023-06-01-preview&t=638400899262097088&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=LwkjSTN6ewwyM5HoiE_ynMZIdZ4ovcy6j26DiWGcA1VE_T935_etKNglkHxMyyyTHjDovH80x8NvxlM_MFOtzOA6wNX0w36oVumlbESZjFaubZrxns5hoBBp07vQIABnme0GK9kC7Guf6Psy95YvSWcXH3Cc-sASB18OOZQ5W97YW-tE77BGvbq1fBpofaZ_YNyMK-UR0YIEE8EKK-IVNXzGB46tYaiE0cYtM5yJjR0SkF5lYCZs6U-jxHWnF65DUTSGLqqEVPZms61Gm-H6Pmy051maXTqjebIP4BktkGFgE7fs86BbHfBFblrNTtkaCPBodvjcp4qQeYbFjD6Syw&h=asPWcEVL0oEMaDQYFjRygkcFFtRqr04OAoZ5TxPg84w + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/fd26e97d-51b0-42e1-928b-adb686fd1fed?api-version=2023-06-01-preview&t=638400899262097088&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=l3eiIyycBK9vkwRwGreYuvWrWVuWE9928Iy9qNulp8rikAYtf6XuzXH2wS263j_9kqvdBSMUwCXBnQwz1yvL-TlVlmDYCQXvsJqzemi44BPpMpgDZIxOEcD4KWWKrjwl9l4-m4hphOFDBPLMey6DTD28POL9_ifxRiZgafLsENm7S306c4yZ4IERyotj9SAzGJrT2Lzwq-LisVJm5M-U62ut1KDzSRuSloqdnx4PvFO-xYbXCoK8FU3XO747PpP1TlYNG9WtsnucSmLEaREJtNdilr4oPBvgkVbLEfzf_UwNXasNcLZwm03AhwPnsHKswKiPWKeczXBe4EtFj0IWTQ&h=J0gsMUL0Cn4R_5qtbYMAED2hoDvB7uRv4lcgOZJPDcU + method: GET + response: + body: '{"name":"fd26e97d-51b0-42e1-928b-adb686fd1fed","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "55" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "56" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "28" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/88cb1a13-fd47-43ef-a973-73166e0f156f?api-version=2023-06-01-preview&t=638400899297099348&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=FBFkmNtqolz7jXA891ASmDqFBNRjPad7zFu52NHm6TiNsuFqO3QhKY5sMZvtYwQ7M_HeetrCAuci4jSsbVKAqwemLWr_wGCxqCv6hdmdd0nHeWox_GV6BeD-1V5U3kQyHTCEgZ3UyAEcW2HdWogZyVLdswUht2logacU_sa9mhkQzL66zqrtOyscDzIbrENVbXRKyHrXPWvkxP9lsTEjvVYp2ACJlR2Z5m8-5QwsYWz9tFh5xhFiDo4V9kLz88Ys2zZW8Vh08Kn3orJK9rBvMqVpkSxAoYyFu_PNlYylqsdC4sqBN_rZ3D_VrsfIVr3a_CUHeLSm-Feut4QBD9em-Q&h=OQbXaAiKwT3Fsj72glKRTCZ26trmZjmGKFvt_rzMv1o + Cache-Control: + - no-cache + Content-Length: + - "88" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/88cb1a13-fd47-43ef-a973-73166e0f156f?api-version=2023-06-01-preview&t=638400899297256448&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=AveK7RsFwkuTpRZKU-fuUf7MkBypJqG4uB0AVpcS7DFovB824SUIgWPYi76dC8bK60x3Qp0UAGQj9-bNZYrEwzspsTyOf6htHg9hPsO_wWpMzEVxAxzbYHCqS4vt-xqUitps9v7jHTgJyPlqvOrZeg_XW6Et2ibXcv563rCZbXaFchrFBYmlZZMNLmW42e6JBRt07HULYg-2OlGXamIF0cfBTPgxkxykm--tPhclA17cYSnhB48RLaA6pTckaOZeeo5DPhqXpLKt-6TIsYzW57py4TWtt1sxu6Bfbq_iLm_GDDZyMWfboCNjEpXsjAks7nrkxewXhcXnrXdkfu7m1Q&h=qy7WrMwPMdhgBzBxS4HyOCmSiyANz11IygOFcNW4X1w + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/88cb1a13-fd47-43ef-a973-73166e0f156f?api-version=2023-06-01-preview&t=638400899297099348&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=FBFkmNtqolz7jXA891ASmDqFBNRjPad7zFu52NHm6TiNsuFqO3QhKY5sMZvtYwQ7M_HeetrCAuci4jSsbVKAqwemLWr_wGCxqCv6hdmdd0nHeWox_GV6BeD-1V5U3kQyHTCEgZ3UyAEcW2HdWogZyVLdswUht2logacU_sa9mhkQzL66zqrtOyscDzIbrENVbXRKyHrXPWvkxP9lsTEjvVYp2ACJlR2Z5m8-5QwsYWz9tFh5xhFiDo4V9kLz88Ys2zZW8Vh08Kn3orJK9rBvMqVpkSxAoYyFu_PNlYylqsdC4sqBN_rZ3D_VrsfIVr3a_CUHeLSm-Feut4QBD9em-Q&h=OQbXaAiKwT3Fsj72glKRTCZ26trmZjmGKFvt_rzMv1o + method: GET + response: + body: '{"name":"88cb1a13-fd47-43ef-a973-73166e0f156f","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/88cb1a13-fd47-43ef-a973-73166e0f156f?api-version=2023-06-01-preview&t=638400899297099348&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=FBFkmNtqolz7jXA891ASmDqFBNRjPad7zFu52NHm6TiNsuFqO3QhKY5sMZvtYwQ7M_HeetrCAuci4jSsbVKAqwemLWr_wGCxqCv6hdmdd0nHeWox_GV6BeD-1V5U3kQyHTCEgZ3UyAEcW2HdWogZyVLdswUht2logacU_sa9mhkQzL66zqrtOyscDzIbrENVbXRKyHrXPWvkxP9lsTEjvVYp2ACJlR2Z5m8-5QwsYWz9tFh5xhFiDo4V9kLz88Ys2zZW8Vh08Kn3orJK9rBvMqVpkSxAoYyFu_PNlYylqsdC4sqBN_rZ3D_VrsfIVr3a_CUHeLSm-Feut4QBD9em-Q&h=OQbXaAiKwT3Fsj72glKRTCZ26trmZjmGKFvt_rzMv1o + method: GET + response: + body: '{"name":"88cb1a13-fd47-43ef-a973-73166e0f156f","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "57" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "58" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "29" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/b02af024-0c97-43e9-bc56-054502570613?api-version=2023-06-01-preview&t=638400899937297025&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=hE9VvhOxAEl1JFGQ7U3jqGpqc4TEMTDzrpcWAHCSNZQbG4Ggqf4X7yQmPeND8kYMVkRwJGattgAJiWiunKXux_ewvuCsqJHGK3IBcArQ5dsDMlRTJao50TAYmYinsiqY47UnR4R4vB5rvjTooLMG3NOHNOTyYfLUnjkfNty3NYrE_XqhPNvrXSQAU-w93bfGKRQAuLWAONae1iwIUEUfdooAlbYDM3DSCMniXts9GkEDdehCdFaDtp8Hc81mtlXziCKWlTxdxpQTyGCHv6qNQp90uxc_vTn-shswa5NgfLaD-7l8LnsSkWtRqZzef3YPfuHKCIa_HvQcGc-4fMq6ig&h=V287Uz56nbz07S46AyIfLSKEPDI_-T_1iz7CGWc9KqM + Cache-Control: + - no-cache + Content-Length: + - "87" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/b02af024-0c97-43e9-bc56-054502570613?api-version=2023-06-01-preview&t=638400899937453947&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=U9ngJQuRAXXz-OlxnwrkCKac2rE25QM-gdKUV8OUHptdJOVTgH4Y_jxwIVHttXTN5D4G_6Q-5xNXGO7SxVJqRLvpOj9via5pR_trj1ELrRzwXRc4iKeuldDF4us9kIyywDWy5RRd7D5YNvLw7rnYMuNwBRyWHzJ1mFWsOyVHkEUJ7pv1cuVdcdqVexWOAXKv8tDl58xXzGxcKmtxPuWF3mN_qmG1ufSdPGYoZOYbJNIYL8U7thJzjZkI9Q5PgRCOiYCjx4Q560FvNvJ0xfJGxOilrqzIhIeQnMwH4eXMJpQ2vu5a0_qg1NjnxkxI_Gnahw46HGIfQQE8jWJTc3X6Jw&h=LRHlyODU0L2Rg2rsKbTXR2GM_l_R-3p3-3RHfrTHSxA + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/b02af024-0c97-43e9-bc56-054502570613?api-version=2023-06-01-preview&t=638400899937297025&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=hE9VvhOxAEl1JFGQ7U3jqGpqc4TEMTDzrpcWAHCSNZQbG4Ggqf4X7yQmPeND8kYMVkRwJGattgAJiWiunKXux_ewvuCsqJHGK3IBcArQ5dsDMlRTJao50TAYmYinsiqY47UnR4R4vB5rvjTooLMG3NOHNOTyYfLUnjkfNty3NYrE_XqhPNvrXSQAU-w93bfGKRQAuLWAONae1iwIUEUfdooAlbYDM3DSCMniXts9GkEDdehCdFaDtp8Hc81mtlXziCKWlTxdxpQTyGCHv6qNQp90uxc_vTn-shswa5NgfLaD-7l8LnsSkWtRqZzef3YPfuHKCIa_HvQcGc-4fMq6ig&h=V287Uz56nbz07S46AyIfLSKEPDI_-T_1iz7CGWc9KqM + method: GET + response: + body: '{"name":"b02af024-0c97-43e9-bc56-054502570613","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/b02af024-0c97-43e9-bc56-054502570613?api-version=2023-06-01-preview&t=638400899937297025&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=hE9VvhOxAEl1JFGQ7U3jqGpqc4TEMTDzrpcWAHCSNZQbG4Ggqf4X7yQmPeND8kYMVkRwJGattgAJiWiunKXux_ewvuCsqJHGK3IBcArQ5dsDMlRTJao50TAYmYinsiqY47UnR4R4vB5rvjTooLMG3NOHNOTyYfLUnjkfNty3NYrE_XqhPNvrXSQAU-w93bfGKRQAuLWAONae1iwIUEUfdooAlbYDM3DSCMniXts9GkEDdehCdFaDtp8Hc81mtlXziCKWlTxdxpQTyGCHv6qNQp90uxc_vTn-shswa5NgfLaD-7l8LnsSkWtRqZzef3YPfuHKCIa_HvQcGc-4fMq6ig&h=V287Uz56nbz07S46AyIfLSKEPDI_-T_1iz7CGWc9KqM + method: GET + response: + body: '{"name":"b02af024-0c97-43e9-bc56-054502570613","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "59" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "60" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "30" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/d9d7b610-ef87-42b0-b3a5-efd539fd6436?api-version=2023-06-01-preview&t=638400900576556218&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=GuAwS7ftq7YC6mN6ZDFJ1X_dviWaxGM0eLoifU8muV7D5d0_9J3ScAhvegP9Ezs7dVZx_DquG98QWEsOOhTh3cCmf_NueOgOKuweuWaFzBBfWFgjCitjDDTVGYmDSRKFsGGax9Wh_0ahxkyL4gGSKJnOcydjqdADZQDbUZrBH7-v_ozdaX9XVOENOyv2DttJMKhrLUnwZBR5vwIG41tZ4LHNLczemgenGgWFIy7GmvQa0prPdz3L8H2nBpxU4vNP0-cJLclvMBzy_iazkMJtrpjNmBmM2Mb3Y5dKs4zLO-nB0T4qs9QxxlXabvk4zhvJhk2LdHrzmaTiy-HwdsTjAg&h=LRnh29YSfBTzy_8GHAJG9O2mbeP3A6PRSpghtg8z6pk + Cache-Control: + - no-cache + Content-Length: + - "87" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/d9d7b610-ef87-42b0-b3a5-efd539fd6436?api-version=2023-06-01-preview&t=638400900576712352&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=XYcaV5XfX6WTpiYH_p7j35052_G_gdzueXIhrEP0INmO09_0kzgzhAPaticqQ2UEXSl5I4zHLgOfQ2smkUzsBMQ1yURrtEpT9DvuON_ytp7PUGOHV-JhcGl166R2e2rJYcBQgn-pWK3rrUgxl-mFlNQ2EAPiKEz9XIaYvLpCGOCA1FNtNM07XyCV3K_jO9Wel9Uto2CA59gMu8GbJ_C1EnR9YiR8w_wJFZ1zc9aZwwcyGUNV9LazpXrdihbEqYndrdRmw9djZ7oT6n2OVsuffsgeCYVLBP2xDJ-jyLBkGtN4wzdfDL-Fn7yuFJ-R_HnD1xyE_UhSRsRufx0Yc630bg&h=9YTXrd4D1UXbkBBmrcYn58CbTjoYVVxac9JadL2VyPE + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/d9d7b610-ef87-42b0-b3a5-efd539fd6436?api-version=2023-06-01-preview&t=638400900576556218&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=GuAwS7ftq7YC6mN6ZDFJ1X_dviWaxGM0eLoifU8muV7D5d0_9J3ScAhvegP9Ezs7dVZx_DquG98QWEsOOhTh3cCmf_NueOgOKuweuWaFzBBfWFgjCitjDDTVGYmDSRKFsGGax9Wh_0ahxkyL4gGSKJnOcydjqdADZQDbUZrBH7-v_ozdaX9XVOENOyv2DttJMKhrLUnwZBR5vwIG41tZ4LHNLczemgenGgWFIy7GmvQa0prPdz3L8H2nBpxU4vNP0-cJLclvMBzy_iazkMJtrpjNmBmM2Mb3Y5dKs4zLO-nB0T4qs9QxxlXabvk4zhvJhk2LdHrzmaTiy-HwdsTjAg&h=LRnh29YSfBTzy_8GHAJG9O2mbeP3A6PRSpghtg8z6pk + method: GET + response: + body: '{"name":"d9d7b610-ef87-42b0-b3a5-efd539fd6436","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "61" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "62" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "31" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/b1d88a1c-4559-4d45-985b-c3435810623e?api-version=2023-06-01-preview&t=638400900610620764&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=blmyaWiZvbOL9nmMZgs__OUP98x918i1yuh-nVxruejAqWdY4j0YR5_uLpxOrZfwnjeypqktv8udEzVZkzED1rIcTpSDPjDmx2WBCEwoKeI76lb2zCDGaQOxYYNqkzGjpIZdtJ9g1pjhLQlkqmqu5IVVg8rKb6_ylK0l8FWHnUzLbqE5-3xVq78_baHqem478FmxoSIy6H3IQiKMYouAB6Yh6rywbXPNaWbdY1l-r2pQ5Ce5rwyFzaQzXAdbFuHUYPatAL95fYkUI0vWZu3xlSx08vWY2srCZclTCfK3nifaRdLqTScu8uUrrGwWdU9p7AQsrLGWrRwS5SlkhlUlZw&h=M01ICMKzbNO9P4_rgK2_8VLEY6OQbzuY6t7UdpsZO9Q + Cache-Control: + - no-cache + Content-Length: + - "88" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/b1d88a1c-4559-4d45-985b-c3435810623e?api-version=2023-06-01-preview&t=638400900610620764&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=FsljtoesoRFJmeFg6Sfq7YTxV57lqsMXJuJXB8nXa255pbblOGxuGYY2vySInbbM31gCwLKI-TJ_8IL6oosExIer5C6wIhw8tY8VFJVkhxDvG4BvAi-1CopkkMm6e6UWH6C4FiX3Q6uamtMowIsNeWCVA9S0GqXWGCnCJzp8XhZR7kOYYX8z_2MnUWWfMFEGUvspGAfopcJa56w-bzP_2I1zNh5K3pb_KfswTjNqFsR8hfHkRgcoG8k-Y2nvHgdpNOUE7FVRnF9-H8UTG3ByDxp5_mZ99RecqdoZFaEGGErEZeiNmamHG4IQMykSnJecyjGqzh8ZSDekLgcIs2HeMA&h=r0J_premekOcn1YVEEgXfKJ1oFO1Sv_Ian-WVcMidyU + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/b1d88a1c-4559-4d45-985b-c3435810623e?api-version=2023-06-01-preview&t=638400900610620764&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=blmyaWiZvbOL9nmMZgs__OUP98x918i1yuh-nVxruejAqWdY4j0YR5_uLpxOrZfwnjeypqktv8udEzVZkzED1rIcTpSDPjDmx2WBCEwoKeI76lb2zCDGaQOxYYNqkzGjpIZdtJ9g1pjhLQlkqmqu5IVVg8rKb6_ylK0l8FWHnUzLbqE5-3xVq78_baHqem478FmxoSIy6H3IQiKMYouAB6Yh6rywbXPNaWbdY1l-r2pQ5Ce5rwyFzaQzXAdbFuHUYPatAL95fYkUI0vWZu3xlSx08vWY2srCZclTCfK3nifaRdLqTScu8uUrrGwWdU9p7AQsrLGWrRwS5SlkhlUlZw&h=M01ICMKzbNO9P4_rgK2_8VLEY6OQbzuY6t7UdpsZO9Q + method: GET + response: + body: '{"name":"b1d88a1c-4559-4d45-985b-c3435810623e","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "63" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "64" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "32" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/804b0fe1-2057-4620-89d9-9301e49ee3c7?api-version=2023-06-01-preview&t=638400900644216729&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=HzQ8gI-VI-_rOoxixDpclVfAObsEEnjThf0HDvWi4S7wYbLStcPGHoU8qqAPvJR60mmbmyZSKAi9--6oztrqGzrfk1Wrva5fP8LRDW9Plz27dECeLNT4l14JazaYH_ROViPTNbp5Cg-oUReDFGnRvIx2jh7zZcCdS9RcvxDhljPqZliQA8T4F_Lp96De9HUGhni-fKn8MDSy_UsSdB7CLjh9WjlxJbUEFfpkIhu_NHIgAaWQ_ZbafJHPj75FfqDQgD2dNJUsON6lHY16u7y6iFvLzLwGnlMbuorN5fKOswADktA2OUq8YNyWvuBtOq8a8YeemWfAkW0MtHx-ohG1Tw&h=CzUtm9TZK8p-NGg_2LHu2XGUlY5oyQbbBjjJkK_Pjp8 + Cache-Control: + - no-cache + Content-Length: + - "88" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/804b0fe1-2057-4620-89d9-9301e49ee3c7?api-version=2023-06-01-preview&t=638400900644216729&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=WH3hDy3FCqrTGfPBCwHlZn85y-GD9In_TN3LKRSs6WMUH1KuDhiWxtId-EiB8KJYhgsmCjAQGe61PXd5MX7H-lq5TCxDjJ7EZQGCpzBjo-yPCYSL25aFO-6Zzm1LOucfTBhm3Z6dbvNYBXljOHUkVQSQkkKJiD9ZKvifWHl5-9mDdDNU6DbEeocMYS9h-YWzhkFL8r1LlQrP5wMalUTmKeTaWknRJgivhX_gSQjaCdrqMMrXdPNIz3eJ0PomEwkRbjLvEIQnGlrDzIv_8M7l3uBxBPr1a0Z47ksrBfMb3azicauOHtYorKR5wTJ7ZROZE2e5866gMsIVvLl2CNlUAA&h=VSi8c_uJdtnCRpJYfg9h8fWdRcrKmK6QZsSZSZk0HCA + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/804b0fe1-2057-4620-89d9-9301e49ee3c7?api-version=2023-06-01-preview&t=638400900644216729&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=HzQ8gI-VI-_rOoxixDpclVfAObsEEnjThf0HDvWi4S7wYbLStcPGHoU8qqAPvJR60mmbmyZSKAi9--6oztrqGzrfk1Wrva5fP8LRDW9Plz27dECeLNT4l14JazaYH_ROViPTNbp5Cg-oUReDFGnRvIx2jh7zZcCdS9RcvxDhljPqZliQA8T4F_Lp96De9HUGhni-fKn8MDSy_UsSdB7CLjh9WjlxJbUEFfpkIhu_NHIgAaWQ_ZbafJHPj75FfqDQgD2dNJUsON6lHY16u7y6iFvLzLwGnlMbuorN5fKOswADktA2OUq8YNyWvuBtOq8a8YeemWfAkW0MtHx-ohG1Tw&h=CzUtm9TZK8p-NGg_2LHu2XGUlY5oyQbbBjjJkK_Pjp8 + method: GET + response: + body: '{"name":"804b0fe1-2057-4620-89d9-9301e49ee3c7","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "65" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "66" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "33" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/1d457d23-0ee1-44a9-a5e6-04a00d32266b?api-version=2023-06-01-preview&t=638400900678281366&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=WeqlHRNKZRF5UZSRz3DBSYRB4uUIipWeO0vVLwgfJ5rsIkTFkmlLHjogCWrfLKgTSCOW2CCrKSY-kRp_4eWynB8YD3efK3tE9h-ER6MHhMSYjlSqt0NzccBgvwqnitiBkb6Eu85S-1KhhXFHyqjBRvf26-0H1q4g8l_jSkmpucmBqb7MOgo73J2_Fjg-emkh_5WmneKHvnennh9MVshA4XGgtkoi5QXqXX5jMN0as5vTShn9Ty4P5ZF6mmUB41J3WDPu7pR1RdNJR4-zBXrURA8agsuhYwK0uRwP_NDnqVBQG84oidV0rsgojwZyX-LQ3VSoZ-E3Zj67tGh0iXYLIw&h=fyuvzK_S-VbSomOMx3vV1LJPnr8CSr5bheezSZg50LI + Cache-Control: + - no-cache + Content-Length: + - "88" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/1d457d23-0ee1-44a9-a5e6-04a00d32266b?api-version=2023-06-01-preview&t=638400900678437658&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=JRPkhZnp_4317odLj3f_i-XywUH_5uOLvi5UOhg97kGbGrQV_uSufL99TtS3aPexyOK5AdJ8ML1sUmpt0rERo9Pnawxt9SAKptgN7_004d_xB_VoVLo2kWp5o30F9J3w1Z79loGXudiFilKTQA7IIM7u80I9bH39SjDw1VHuc0atfExUTz4xo1aQa8kZexl6zFVyM2kd3V-o7LwzCwuROivBzxnLbqcNbp0_sjN0cGpTEbvGuPXidgS2_avifFKQ0PEeJ79U511fRySKz8awBZqJ4mVcyV6nV0WPznVyYb7LLKRmbBfmi2L7dmPbhm-mWYjlD-7MpHJM7yH2gumdMg&h=i973v2Bt6oQ06qIhiM2UM-NPil5t2XTNft6wQPdEKdI + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/1d457d23-0ee1-44a9-a5e6-04a00d32266b?api-version=2023-06-01-preview&t=638400900678281366&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=WeqlHRNKZRF5UZSRz3DBSYRB4uUIipWeO0vVLwgfJ5rsIkTFkmlLHjogCWrfLKgTSCOW2CCrKSY-kRp_4eWynB8YD3efK3tE9h-ER6MHhMSYjlSqt0NzccBgvwqnitiBkb6Eu85S-1KhhXFHyqjBRvf26-0H1q4g8l_jSkmpucmBqb7MOgo73J2_Fjg-emkh_5WmneKHvnennh9MVshA4XGgtkoi5QXqXX5jMN0as5vTShn9Ty4P5ZF6mmUB41J3WDPu7pR1RdNJR4-zBXrURA8agsuhYwK0uRwP_NDnqVBQG84oidV0rsgojwZyX-LQ3VSoZ-E3Zj67tGh0iXYLIw&h=fyuvzK_S-VbSomOMx3vV1LJPnr8CSr5bheezSZg50LI + method: GET + response: + body: '{"name":"1d457d23-0ee1-44a9-a5e6-04a00d32266b","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "67" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "68" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "34" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/c2c4bbb5-40ea-4daf-b673-11a387045d2d?api-version=2023-06-01-preview&t=638400900711878056&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=mh0dDzd9vvUzMUmMa7IJbVRWQQbS0n4ne_F3K42uHfHJPauPvJ0V0AkxraUWqz6QDrTRvfrtnp2i54JFxfFr-pzGy-t1L8CIzZQgfn_ydQwFBElNewppJpuopoIC6_UVoQPbNo6wg4nncCVhf_ri0t5UWx5pSLw7x2jxqvPXV1kN6QYSwwzkpewL7esW7BHb9mDsMU_M6FDo4g9YYtztZMzla4YuVDO2BcZlOhGTfHjW3iqfSI1ycESxXD6u1Hy6PijzTc47gelfmsIy7_RusdAuD9cbN6UelS2UhAOIRaotARzev8nBZJgmbpgxAQzvL5oSJhk7DL5pf6xOGToDfQ&h=Njc7fOoTJY7K8L7EjN-5QIGWFj14BlUtVwiWt7nhwJA + Cache-Control: + - no-cache + Content-Length: + - "88" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/c2c4bbb5-40ea-4daf-b673-11a387045d2d?api-version=2023-06-01-preview&t=638400900712033545&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=Va6hj06oFH8vKF5Yi5Kte0-kXGY2l5lHWbp-kSWhdSMcrJU5qtIaQISpNcYzmo8IwtqzVgikkThYr2ZVTvpc8U-Kqp922k2VIE97OXyeNndAlD4MB5uxePAtx3rzji7Tlg6ptTAH9ZG7TebRfgxtBxzEZt_sKWl0G_O7pM6sD6D2s5KZsqWOuXk5b09XrQevz-yUtk5KaEVAOaTCVrGmy4pojtudHMlncBnoUs1JckkUlG_r5RvOIhtsf_XMJLtBMgT3e7XVt9n_GH_i_fDV6ruKq_gCvaWVI-U0Yb9Tybd2HSFwFs55hxF87UiEEzhBZDRTr5_l5vPRHyxl17noXA&h=RoVkdnZ3rg2x0VLsTQdIYmAsrmd7nZXkA17oYBC_ssE + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/c2c4bbb5-40ea-4daf-b673-11a387045d2d?api-version=2023-06-01-preview&t=638400900711878056&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=mh0dDzd9vvUzMUmMa7IJbVRWQQbS0n4ne_F3K42uHfHJPauPvJ0V0AkxraUWqz6QDrTRvfrtnp2i54JFxfFr-pzGy-t1L8CIzZQgfn_ydQwFBElNewppJpuopoIC6_UVoQPbNo6wg4nncCVhf_ri0t5UWx5pSLw7x2jxqvPXV1kN6QYSwwzkpewL7esW7BHb9mDsMU_M6FDo4g9YYtztZMzla4YuVDO2BcZlOhGTfHjW3iqfSI1ycESxXD6u1Hy6PijzTc47gelfmsIy7_RusdAuD9cbN6UelS2UhAOIRaotARzev8nBZJgmbpgxAQzvL5oSJhk7DL5pf6xOGToDfQ&h=Njc7fOoTJY7K8L7EjN-5QIGWFj14BlUtVwiWt7nhwJA + method: GET + response: + body: '{"name":"c2c4bbb5-40ea-4daf-b673-11a387045d2d","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/c2c4bbb5-40ea-4daf-b673-11a387045d2d?api-version=2023-06-01-preview&t=638400900711878056&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=mh0dDzd9vvUzMUmMa7IJbVRWQQbS0n4ne_F3K42uHfHJPauPvJ0V0AkxraUWqz6QDrTRvfrtnp2i54JFxfFr-pzGy-t1L8CIzZQgfn_ydQwFBElNewppJpuopoIC6_UVoQPbNo6wg4nncCVhf_ri0t5UWx5pSLw7x2jxqvPXV1kN6QYSwwzkpewL7esW7BHb9mDsMU_M6FDo4g9YYtztZMzla4YuVDO2BcZlOhGTfHjW3iqfSI1ycESxXD6u1Hy6PijzTc47gelfmsIy7_RusdAuD9cbN6UelS2UhAOIRaotARzev8nBZJgmbpgxAQzvL5oSJhk7DL5pf6xOGToDfQ&h=Njc7fOoTJY7K8L7EjN-5QIGWFj14BlUtVwiWt7nhwJA + method: GET + response: + body: '{"name":"c2c4bbb5-40ea-4daf-b673-11a387045d2d","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "69" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "70" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "35" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/90bf8912-5a04-40f3-9334-ac3d7ba277aa?api-version=2023-06-01-preview&t=638400901351136944&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=nFxK_oImK9Ofa0JTkN0FqNzRrHz_fW3vH2bAxrFyM15BJ3x_e9-C_ePzAkBd4siiMRy8GNxOffRWhObV_KqsTeG8m4kV9BPpbWDNXOKRzwry9pB7X9lmIfG7eFSIZRgCMLLn6lTk5E2CRsDwdH5XRVXeNX5G7wMzsfgt9rvTjtPIxw6e0puT39HBpsjH4BieA3zkypPwUWyNgIkKWIANnLCaBpy4jO3zBACSRdRumtMfcfVwx3LgluYvnXMBhVUh3sHVyvH2DKoTONeUy-CIIyKAG5bz93oKWFYGKRd2n1BfBuaUi6xaeBubHhmWQ8PVAfnLVCjo_zPlSkYjfBNA4g&h=0Sr_cWMDoVFCMYIEdf4nQhpOq3VpxN9nf6oHq9Rwg3s + Cache-Control: + - no-cache + Content-Length: + - "87" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/90bf8912-5a04-40f3-9334-ac3d7ba277aa?api-version=2023-06-01-preview&t=638400901351136944&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=XH0FZnLKxnSPxP_9UBfVo54lV1ehg9v1iQAKV8MG7GCC8WnMa3lCr0wlqd93aAgopGHT3slorhw5gLq1TkZhpULKo9HvmFkJBpEyRRSQDntzECm-Xfm-zfi6U3BuAvsLQdMGI518eniF7mUpzCzg6UVv1_5SvdmKL4FQslsRBivrnn7iEG_-MWodnmIHWmYfamKGlvEtDG_BFwuE3fQuWsZyFUap7dDOMPEATjhURUYQEcygRFLwdlJvBwAa8hpp3hjclBwRtXdPNIYCjcW0_xxXlv7zUkNS48Sz9CoCaPP2-CXDszpkcCFrD6TochelSfF2vJi-omla_5zc8QStxg&h=5h3YJ2Kj_lFkmY2CrMUColzcK_GgGl-fXLGTGEffMo0 + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/90bf8912-5a04-40f3-9334-ac3d7ba277aa?api-version=2023-06-01-preview&t=638400901351136944&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=nFxK_oImK9Ofa0JTkN0FqNzRrHz_fW3vH2bAxrFyM15BJ3x_e9-C_ePzAkBd4siiMRy8GNxOffRWhObV_KqsTeG8m4kV9BPpbWDNXOKRzwry9pB7X9lmIfG7eFSIZRgCMLLn6lTk5E2CRsDwdH5XRVXeNX5G7wMzsfgt9rvTjtPIxw6e0puT39HBpsjH4BieA3zkypPwUWyNgIkKWIANnLCaBpy4jO3zBACSRdRumtMfcfVwx3LgluYvnXMBhVUh3sHVyvH2DKoTONeUy-CIIyKAG5bz93oKWFYGKRd2n1BfBuaUi6xaeBubHhmWQ8PVAfnLVCjo_zPlSkYjfBNA4g&h=0Sr_cWMDoVFCMYIEdf4nQhpOq3VpxN9nf6oHq9Rwg3s + method: GET + response: + body: '{"name":"90bf8912-5a04-40f3-9334-ac3d7ba277aa","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "71" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "72" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "36" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/14bb7201-85b1-4077-8b1b-ed25a46ee515?api-version=2023-06-01-preview&t=638400901385045335&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=Vr22s2E9KMJ7kIPYNa7pwdH95dHhgOeJR0qCtqGhz3d5qNBwYcSdutn23u_4XakXt7E-tzbY2Q69WkuUshy-vOFP3nTTMLkAPLCMltaEfvWmLkebn5Ne72lyYQoIqZkPnY-g6CLF00AGdP8owYRRSjYnTX83nDoobFxFhot7eeLDBBFk66Mb1CQ_96r52g0TXAqZ9SBqtJcIDXVCMJpuNCmE4CObcXi2SYQQT-woAj4aIzYgknR2gi7A1YtNXy3iDy7wxT24RAKdLKwzIGk6Kc4KqRKPlx1mFGAEg2Si2tmLjzCc4TLY4oADBDQ3ACxAx-Qcu3XiQ9Xv1krVJ4Mjqw&h=9DHUHDwDZyUFSNkQVu9ATH5agHJSbTWkuVqF3O_rAes + Cache-Control: + - no-cache + Content-Length: + - "87" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/14bb7201-85b1-4077-8b1b-ed25a46ee515?api-version=2023-06-01-preview&t=638400901385201612&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=QyE4Vq-a7BukDdtOvnzVDgbHI1v0IPHuVAVrK1BKXbdXY0DR5JMdfWmG61pW5qOv4r1gcbEMq7VcKKIO-a1EX3PJxnwsUq-p4E6MwZa_q7VfZ5Dst2u881HJONVcjpFuEC76BF1QVJjLqsR0kU_SZUVxAkrH4AMR2WGCYmEM3nAuj8-Oy0leNdIuAt96tePSpNo3cVw_glm77nh_wBS2sAVdYlRmNuu-WVhxB23mPCv3ngKJ14LCZya24vEBK7SH67qoHJA7GdLEpHPTLikO7TSvk8AIrZsSXlPYhI57SGj9r71rIpHZmGi0GoCrVvT1_Z1CSMYheMFevncIzMkaIA&h=mXmNWbEPEes8oXX23EKM7cf5sxwdur9dv0wh_mw1BVg + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/14bb7201-85b1-4077-8b1b-ed25a46ee515?api-version=2023-06-01-preview&t=638400901385045335&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=Vr22s2E9KMJ7kIPYNa7pwdH95dHhgOeJR0qCtqGhz3d5qNBwYcSdutn23u_4XakXt7E-tzbY2Q69WkuUshy-vOFP3nTTMLkAPLCMltaEfvWmLkebn5Ne72lyYQoIqZkPnY-g6CLF00AGdP8owYRRSjYnTX83nDoobFxFhot7eeLDBBFk66Mb1CQ_96r52g0TXAqZ9SBqtJcIDXVCMJpuNCmE4CObcXi2SYQQT-woAj4aIzYgknR2gi7A1YtNXy3iDy7wxT24RAKdLKwzIGk6Kc4KqRKPlx1mFGAEg2Si2tmLjzCc4TLY4oADBDQ3ACxAx-Qcu3XiQ9Xv1krVJ4Mjqw&h=9DHUHDwDZyUFSNkQVu9ATH5agHJSbTWkuVqF3O_rAes + method: GET + response: + body: '{"name":"14bb7201-85b1-4077-8b1b-ed25a46ee515","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "73" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "74" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "37" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/293e32c8-9508-46c2-8a2e-a4508d24155a?api-version=2023-06-01-preview&t=638400901423797858&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=J9KUBpIslNgymzELDcK1m3kp5P3HQuk7eEfDI-S4AUyfhH34JQ_AZXSE4V3J4TDHXvSUKNtiC1E_WarY4oOZblehYcdVOn7XlaOZXkefKVnJJTYLX54b-ZD0CBo5nqzs8MtWVEiFBKhv6ddbXdKea3SnF729K2nnC7kPZEcygBeCM1TOOF_Rm-mFUucs5G4-9YQqxMm_1IGdja13LMsG08uOeV14BfUZFexs-jJvF3rzwheH-qzVcFXImqo0OQ-MK6byabQ4J0Ex2Z7rtq7c8qiVNHxlFeTDIy3siUJv7MD_qS-iJN3e0m4S82BRjNsiZPb4q7xQ0NsZOI4UW9lj7g&h=oH1VzhFokHor035AMtSsCasfWpLPCR3zh4OBs5XeNu4 + Cache-Control: + - no-cache + Content-Length: + - "88" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/293e32c8-9508-46c2-8a2e-a4508d24155a?api-version=2023-06-01-preview&t=638400901423797858&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=Cy55YjgtHr6JNsmf9Up5EsEH9X03Vx4JCSDyl43-L0rjqTOW6ExhgNc5LShsjf1HWiKEfn1SdzZ3S-4HXWerf7ThKjsI2L8zqnGwdDjWUdSlgzvGGEK4qL6rAoYzYKdyj-ZUAuHfsH1wRpFY9ZUZ4402MFF-wQU_zieGDhMNTJRSb4W_zHxWFXtTh86Dg_lpyQtVtMivismFG0CoWyuwuJXOvbnNDtr0v7qMqfFcu_JXv978YgUMOvqwnjr5rs9Cyd5rG8Ni9CH1GClBMUIHUbW7boTKFnCt0xPL39mkdnat8XP6a8fD6-LpfdK7gMOmvY-5OZAguebngJlRCF12bA&h=Jgo6Qx5Z6QBQGUrLsR6ptiKvcFb_YviJboueyFZBoXs + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/293e32c8-9508-46c2-8a2e-a4508d24155a?api-version=2023-06-01-preview&t=638400901423797858&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=J9KUBpIslNgymzELDcK1m3kp5P3HQuk7eEfDI-S4AUyfhH34JQ_AZXSE4V3J4TDHXvSUKNtiC1E_WarY4oOZblehYcdVOn7XlaOZXkefKVnJJTYLX54b-ZD0CBo5nqzs8MtWVEiFBKhv6ddbXdKea3SnF729K2nnC7kPZEcygBeCM1TOOF_Rm-mFUucs5G4-9YQqxMm_1IGdja13LMsG08uOeV14BfUZFexs-jJvF3rzwheH-qzVcFXImqo0OQ-MK6byabQ4J0Ex2Z7rtq7c8qiVNHxlFeTDIy3siUJv7MD_qS-iJN3e0m4S82BRjNsiZPb4q7xQ0NsZOI4UW9lj7g&h=oH1VzhFokHor035AMtSsCasfWpLPCR3zh4OBs5XeNu4 + method: GET + response: + body: '{"name":"293e32c8-9508-46c2-8a2e-a4508d24155a","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "75" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "76" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "38" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/974edf4a-d9ef-4dbc-8cbd-81551376a958?api-version=2023-06-01-preview&t=638400901458018784&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=eQMBUmWWTg4BJ2Xf6vyJxkJeuwtPZrLqDBQ_wIuU_iio_8jJSwEOwzamDBpvKtY0_88Ihvjfvm5RBzAPLXFMH0-jVu_tPoent9cUI3qSvo1qSyXPHbo6qPP_pvKlmHRWwA_C8PTNuQXWYBpLpkRt7KyDltGtUysWgftS3h_kPtohtPCV2s4NOevHJ90taWZxR449SqEg3tiSnwqPHyLtCegrWYSg4ApTb6kELrJBATVii8Zjif_XF538gWk1BYgRrb9nLCjJENKIvwifR3ANf59HV_5kq_qsqEzc4pBNs_tetaLIgdQiESC28kf8dReL0O23gnkBLa6KwBGmYeABEg&h=WBGyBqL9cNOYCuyOCiw_l8R2LTs6hzsHPzwIXrE1IB4 + Cache-Control: + - no-cache + Content-Length: + - "88" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/974edf4a-d9ef-4dbc-8cbd-81551376a958?api-version=2023-06-01-preview&t=638400901458175029&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=kGYAmTEHDd4WWNTtABg0hEBnaA_4J4ZeaCyNP-_HbIUlCQuthsNxpPzHFfVN7Ie2h8MiOMD1LiWmHZAqtBX5N9E5oBQxsjprxZcsWlsefDeEEiU0Ooyyyr-TDquICQib6ymnGgZcvuzvZ9fr_1rs44V44G8tzP1nowet9eD3LmMak0Ml40nLEkTVuGVM2so5TwzFTfTgWzXhH9YGVyiFGyjebabm8VQr33ewiv3QRPDXCknHgALRU3xCQzZZjSs9luAy7KWhQ7tdoTfDeoDeBcHozXCwpydZV7kFHB2sVkgXZCdrzTp6Efs82No49Gn8KarCBvQ_IDAJ3ixec_fN4g&h=ctAhq4EPA7H9_RXuUH4fd-L-1hUlQDDddZiDjyS1f6I + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/974edf4a-d9ef-4dbc-8cbd-81551376a958?api-version=2023-06-01-preview&t=638400901458018784&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=eQMBUmWWTg4BJ2Xf6vyJxkJeuwtPZrLqDBQ_wIuU_iio_8jJSwEOwzamDBpvKtY0_88Ihvjfvm5RBzAPLXFMH0-jVu_tPoent9cUI3qSvo1qSyXPHbo6qPP_pvKlmHRWwA_C8PTNuQXWYBpLpkRt7KyDltGtUysWgftS3h_kPtohtPCV2s4NOevHJ90taWZxR449SqEg3tiSnwqPHyLtCegrWYSg4ApTb6kELrJBATVii8Zjif_XF538gWk1BYgRrb9nLCjJENKIvwifR3ANf59HV_5kq_qsqEzc4pBNs_tetaLIgdQiESC28kf8dReL0O23gnkBLa6KwBGmYeABEg&h=WBGyBqL9cNOYCuyOCiw_l8R2LTs6hzsHPzwIXrE1IB4 + method: GET + response: + body: '{"name":"974edf4a-d9ef-4dbc-8cbd-81551376a958","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "77" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "78" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "39" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/5e437306-ae4c-4784-a889-0fb2e90854ba?api-version=2023-06-01-preview&t=638400901494271738&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=anJCr_QBl58KUvVh7d_CXCm9_BL_8u2rZvwHI-8e_nfM3d6gfCyR8Z-yHfNIWHRNkCZA0M4uKur7nZWuqxcgEhrFiy0SNUK-1Ro2WLzeZillPG6sxterY7mG4g9k5uoE5YUWOOrorujxhAofFIRrq3WWa9EXwO221pSnS_EARCdYU20tx2zIoy0cpJZHKxGhe4ndxiGzbtp2uvJeqy4jUuai9VnIJgZcLaot9G6-wAjDOIpnxAGxVVtpJWBl3d9PGW7rR9J_vVnBevVkrwY60O0foAbhUXGp_mb33z4-gjJvayi2nWHdfldUuB3X6kppiKFiSAGgRxJVtKB-v4RJJg&h=aoI6jtsJFVceYJLWWVB42FXy0mCmIsxWyLP1F7w42c8 + Cache-Control: + - no-cache + Content-Length: + - "87" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/5e437306-ae4c-4784-a889-0fb2e90854ba?api-version=2023-06-01-preview&t=638400901494271738&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=bMgXHeHjzUI1DiYiUz2AnLHoSHxWJ56uZnqh6D_SYpom1VLlca0GPIQ_HZSjgr0F9MAGMzOpdLfEp_nFzNOk2JPX0H8JXT5nb0caNsyzBnNLBy-GLziiUJI4vENFE4ZKbaNdwPjkjNpdOOEv_Zk8fZEFUJNsnJAuR9QXADsSKUNzGkuEk12fmASiBLEA2RnUmjgQu6XhTvT96SY7bVANYnyXPHaqrsGAvEPC2o1TqyTmWDLz9-tJHNoO1I6GCXXFdChQctXs4lPnW6OrXmDJ3qerzNAFvOZ6jjp2GKDg9pbVcXc-V1pAIHc1obu0ToT6N8QwrvrnAPNkzjUzftY46g&h=GpBXsIfct0iOuKpjWHsCYcOcsrCo5GXPiubifYoL3hk + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/5e437306-ae4c-4784-a889-0fb2e90854ba?api-version=2023-06-01-preview&t=638400901494271738&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=anJCr_QBl58KUvVh7d_CXCm9_BL_8u2rZvwHI-8e_nfM3d6gfCyR8Z-yHfNIWHRNkCZA0M4uKur7nZWuqxcgEhrFiy0SNUK-1Ro2WLzeZillPG6sxterY7mG4g9k5uoE5YUWOOrorujxhAofFIRrq3WWa9EXwO221pSnS_EARCdYU20tx2zIoy0cpJZHKxGhe4ndxiGzbtp2uvJeqy4jUuai9VnIJgZcLaot9G6-wAjDOIpnxAGxVVtpJWBl3d9PGW7rR9J_vVnBevVkrwY60O0foAbhUXGp_mb33z4-gjJvayi2nWHdfldUuB3X6kppiKFiSAGgRxJVtKB-v4RJJg&h=aoI6jtsJFVceYJLWWVB42FXy0mCmIsxWyLP1F7w42c8 + method: GET + response: + body: '{"name":"5e437306-ae4c-4784-a889-0fb2e90854ba","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "79" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "80" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "40" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/341398c8-fce4-4038-bebb-c8b16bc7e62e?api-version=2023-06-01-preview&t=638400901529429636&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=iSGUAsgZT-zLMHLLuePA0KTMPhTnJJha-RRWDdNBfrbK2MoZmnxONSV6bjJrhDUW0E6XF0IKWCKCdZDFn0atp-EObaXb8xFEPBW_4YDFQ0_EAvaWXMvRJuvi071zhBRxmtVglOwS6oCQ3Dn4OluOhqAVPhpeoUEoFmEjf2hgZHlP9rJREZNtQ3c82cpUWGuOp9yeziPxE_hfRCT5tu1dgKRc2QBQmAB5xdlxKKS5gYdnsDFWHM0hac69RrNK3nhC1TkKSRWhmoV4THfmsXXHHpW3fvAt5Kj0w_Wx6lS3k9Mww9ZLvMSZREtypE-beYz-8lxI10Y-qK13gj3br5TmAQ&h=eL_NuYBOjwnK0aCTjhsb_woXTkTamxz4gh1DeOwLlHo + Cache-Control: + - no-cache + Content-Length: + - "88" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/341398c8-fce4-4038-bebb-c8b16bc7e62e?api-version=2023-06-01-preview&t=638400901529586840&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=FFdCcE5MoKwQ_0QfeBUOnjBMALvbhgBSoulY_Q8xO91aKH5oZxSOcNStoHtx3FH9GoRWLSdgLYFKto2CI1mGfcoZJfkszC4zc96jetn_p7BLSgUvCMGVN0GZ1hHFgTfZ5tBpVXwlxQdoTbganPdGUzxLiKSdPvm4QQx-1SZZuSbyoFVsB-CFddxZLeU1k3ekALGfW2qFKOQKUpRltU6-iKnsmr18KBT3syWeZSLSD7vG9f-QPYaiXFNlVk-476fTXTKMrgwfS3gDec87WJhPoEApwp_qxF6bzIcPgrj_UpTT6E-irJXdqoLl26Tat9YaIUe8Qtd2ypEDxrs41QTVgw&h=hGJvCmzqp7J_tiwUEy0ebOyhjZXSEeDvAVJZQ--IZUo + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/341398c8-fce4-4038-bebb-c8b16bc7e62e?api-version=2023-06-01-preview&t=638400901529429636&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=iSGUAsgZT-zLMHLLuePA0KTMPhTnJJha-RRWDdNBfrbK2MoZmnxONSV6bjJrhDUW0E6XF0IKWCKCdZDFn0atp-EObaXb8xFEPBW_4YDFQ0_EAvaWXMvRJuvi071zhBRxmtVglOwS6oCQ3Dn4OluOhqAVPhpeoUEoFmEjf2hgZHlP9rJREZNtQ3c82cpUWGuOp9yeziPxE_hfRCT5tu1dgKRc2QBQmAB5xdlxKKS5gYdnsDFWHM0hac69RrNK3nhC1TkKSRWhmoV4THfmsXXHHpW3fvAt5Kj0w_Wx6lS3k9Mww9ZLvMSZREtypE-beYz-8lxI10Y-qK13gj3br5TmAQ&h=eL_NuYBOjwnK0aCTjhsb_woXTkTamxz4gh1DeOwLlHo + method: GET + response: + body: '{"name":"341398c8-fce4-4038-bebb-c8b16bc7e62e","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/341398c8-fce4-4038-bebb-c8b16bc7e62e?api-version=2023-06-01-preview&t=638400901529429636&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=iSGUAsgZT-zLMHLLuePA0KTMPhTnJJha-RRWDdNBfrbK2MoZmnxONSV6bjJrhDUW0E6XF0IKWCKCdZDFn0atp-EObaXb8xFEPBW_4YDFQ0_EAvaWXMvRJuvi071zhBRxmtVglOwS6oCQ3Dn4OluOhqAVPhpeoUEoFmEjf2hgZHlP9rJREZNtQ3c82cpUWGuOp9yeziPxE_hfRCT5tu1dgKRc2QBQmAB5xdlxKKS5gYdnsDFWHM0hac69RrNK3nhC1TkKSRWhmoV4THfmsXXHHpW3fvAt5Kj0w_Wx6lS3k9Mww9ZLvMSZREtypE-beYz-8lxI10Y-qK13gj3br5TmAQ&h=eL_NuYBOjwnK0aCTjhsb_woXTkTamxz4gh1DeOwLlHo + method: GET + response: + body: '{"name":"341398c8-fce4-4038-bebb-c8b16bc7e62e","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "81" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "82" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "41" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/d81f1c8a-8025-4aa3-9638-d3678f0360d3?api-version=2023-06-01-preview&t=638400902168845446&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=kO_X4sLTww5ugfdKRB5g2KvfiOeIlXnM3__PnAl2sSl1kNicZwEicrjXb4XBIUrBdVOOj5NUwg3NNtxT3Nki_7ma3VPM-YBNJAv1C5g8iVqk6Oz01kHr1fvg-QWiMSayEeBphZ35ijl9O_FIw0alLw5xpRXCQxdVVS4T2FMIUhJjZ2kFT4LPoWv-IWm7ruUuTQjW0bVtKysTe35_LqZR1CWZqgXdgJ6xy4-bhCLSZir_MkOt918n-wlPU53Q8MggUAigVhBhnXpjQlzSsvYqUzMn-qsqQTNHSHcnHLiFnQz0ObECTV4dXLIsgn2BsZMmYtEw8x5P4MiDgnLiaRHQuw&h=QSzvAt-NV9HNyZ05swmV_rJqwaBvEvO_S_JS5SSqP8U + Cache-Control: + - no-cache + Content-Length: + - "87" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/d81f1c8a-8025-4aa3-9638-d3678f0360d3?api-version=2023-06-01-preview&t=638400902168845446&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=SUImjQP6qTnKmYO8v-v56PqBSKJAGX-vJpzjxjRYjq87DhCPd4s7OUwp_UUu-mkkRL_dJcnbUGvCeXMXS4zTwwCfwKKIIFVuhkFd4VzUAREv-ZwueVmG-iRENXJVdLY-xFXeRRGnSOgKsy0KE2M_EfTeNOBke0axNtcNHZag0dBWkT3vFx5YRh8i_XQnvDvc422CiSbycasD9dUiTnrcRXl3Lrxcxh2N5b5fi3jp12HL7yFd6qNQghL58sf6BcfU_IRZEnYySzwnf361TUREe797_wm1OPIvubpOW0lurQ2pX5cS9yDFQxrRIPE_hjbjJzC6hY_i49pwtll-HOqEqA&h=XNmA0xuqoDpdFTTwqSH1VRzJ1T0dv5MG4ZxMOaAel5A + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/d81f1c8a-8025-4aa3-9638-d3678f0360d3?api-version=2023-06-01-preview&t=638400902168845446&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=kO_X4sLTww5ugfdKRB5g2KvfiOeIlXnM3__PnAl2sSl1kNicZwEicrjXb4XBIUrBdVOOj5NUwg3NNtxT3Nki_7ma3VPM-YBNJAv1C5g8iVqk6Oz01kHr1fvg-QWiMSayEeBphZ35ijl9O_FIw0alLw5xpRXCQxdVVS4T2FMIUhJjZ2kFT4LPoWv-IWm7ruUuTQjW0bVtKysTe35_LqZR1CWZqgXdgJ6xy4-bhCLSZir_MkOt918n-wlPU53Q8MggUAigVhBhnXpjQlzSsvYqUzMn-qsqQTNHSHcnHLiFnQz0ObECTV4dXLIsgn2BsZMmYtEw8x5P4MiDgnLiaRHQuw&h=QSzvAt-NV9HNyZ05swmV_rJqwaBvEvO_S_JS5SSqP8U + method: GET + response: + body: '{"name":"d81f1c8a-8025-4aa3-9638-d3678f0360d3","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "83" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "84" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "42" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/29f558f7-e172-4582-9e89-57ba89ac3457?api-version=2023-06-01-preview&t=638400902203378937&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=FphDnOD3r_i-CHyT6F4u7fj-FydiaP-wov2zWzn2Bpy1nw8U3AmKlDsUtBTReWrElSoJB6pUI0VDz6Ba6mgIS9lFr5aBwjMg1uxB-8CM2J3druAm_7KuNZy0WREMiGM8amyF1lHk0zoqMZnWkCdHGMyqkGOC2giCombus_IBXFQWW_CbO9QulWOo1ySuZ5U-CN-fkkqG-0RGQ4DxobhaVUs-inyFR7ng6s1JTM3s6SGoCknDoA_P-O4WGp540AQkiuhKl-lapjlUr1y-bggFFnILY05LZ4Tpk97W8dvAiLrnECo7SwOhxvHfExgCsZ2E0-OdOyawRJkifh-a2YFipw&h=sxy2uv-3bWlLp6AXW4gVofEWuGqVNoXQL6CcWKqzWiw + Cache-Control: + - no-cache + Content-Length: + - "88" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/29f558f7-e172-4582-9e89-57ba89ac3457?api-version=2023-06-01-preview&t=638400902203535179&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=ew7NF05K3Aga4c_9t0N4EBsT-UTOAajIzLknAJ0CKOHWUud_8B22A-BIRFOFZql1aGDQZzfy6qk1ZW5139_cEOiKNxhIMbDNVKX7X-vgrJo1jv48ZYKBHFUOtY3O6uzk2rgNiZ760x8r_eTUAux5k7IusSAqgHFsA1uMp0Vfy6ZimKsi7mRPIWzQTiyS6tuluMd9sg3DtsHMlPiwJSQK13_j0UCHlDOz2fY-K1tZVGijHvb8GfbICGrP3JtX3PxW6RxUuenZGdb7HehKaDEJ0P4rXHiDdCBjrCVCJ16_pN_CzpxqUaDpbxTEq6GSYby-p-IW9ivtvi1SQuxvYpUOPQ&h=BOFojHunMC6nM0vO2kZpzRi4loY9hogwd_ZoUoE9lAg + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/29f558f7-e172-4582-9e89-57ba89ac3457?api-version=2023-06-01-preview&t=638400902203378937&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=FphDnOD3r_i-CHyT6F4u7fj-FydiaP-wov2zWzn2Bpy1nw8U3AmKlDsUtBTReWrElSoJB6pUI0VDz6Ba6mgIS9lFr5aBwjMg1uxB-8CM2J3druAm_7KuNZy0WREMiGM8amyF1lHk0zoqMZnWkCdHGMyqkGOC2giCombus_IBXFQWW_CbO9QulWOo1ySuZ5U-CN-fkkqG-0RGQ4DxobhaVUs-inyFR7ng6s1JTM3s6SGoCknDoA_P-O4WGp540AQkiuhKl-lapjlUr1y-bggFFnILY05LZ4Tpk97W8dvAiLrnECo7SwOhxvHfExgCsZ2E0-OdOyawRJkifh-a2YFipw&h=sxy2uv-3bWlLp6AXW4gVofEWuGqVNoXQL6CcWKqzWiw + method: GET + response: + body: '{"name":"29f558f7-e172-4582-9e89-57ba89ac3457","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/29f558f7-e172-4582-9e89-57ba89ac3457?api-version=2023-06-01-preview&t=638400902203378937&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=FphDnOD3r_i-CHyT6F4u7fj-FydiaP-wov2zWzn2Bpy1nw8U3AmKlDsUtBTReWrElSoJB6pUI0VDz6Ba6mgIS9lFr5aBwjMg1uxB-8CM2J3druAm_7KuNZy0WREMiGM8amyF1lHk0zoqMZnWkCdHGMyqkGOC2giCombus_IBXFQWW_CbO9QulWOo1ySuZ5U-CN-fkkqG-0RGQ4DxobhaVUs-inyFR7ng6s1JTM3s6SGoCknDoA_P-O4WGp540AQkiuhKl-lapjlUr1y-bggFFnILY05LZ4Tpk97W8dvAiLrnECo7SwOhxvHfExgCsZ2E0-OdOyawRJkifh-a2YFipw&h=sxy2uv-3bWlLp6AXW4gVofEWuGqVNoXQL6CcWKqzWiw + method: GET + response: + body: '{"name":"29f558f7-e172-4582-9e89-57ba89ac3457","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "85" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "86" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "253" + Content-Type: + - application/json + Test-Request-Attempt: + - "43" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/b6c6977e-d672-4666-8a62-09d2a8f342f1?api-version=2023-06-01-preview&t=638400902843107279&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=YNQp3-PMNkyFNNchsNs__ewXi0Z-CKgEQlEgIzKI7jUk83p5sjP_63n0UjhdWZXD2t-SOnCyqDuZeswWr5M1_eJJca4A5LGcbsv-Td4XsAWFXHkCOMPfF8hJGmFxm65jM1I8hajZ1Yfa30kTne8UTX7XhVbD6qfgOjkCLhcR5ZgUcRKEeS0LapYdZVoviIcpRi9SdeQMboCQKvwVGMd1fbNcrqq6RNthLuXr3cV0caPOpmqFKerVLcVNwknym2pE95q-J41VSMWX4YgiEP2FYOoctQcubXf30hFO1EhX-2asVFp7mzJc3RIoPVMNj8yodU69HkS2zjwDyKxACx1rUA&h=RdLppvwicTDkXVwXBCi-xJu_hx2tw5__xXnFJYCD3OU + Cache-Control: + - no-cache + Content-Length: + - "87" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/b6c6977e-d672-4666-8a62-09d2a8f342f1?api-version=2023-06-01-preview&t=638400902843107279&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=UqugapODs2VpHriaU8DJNCFHyTaz-1XU3Tc3O9CDhZtjSTMx9UdUGGArSCbiVoHF5w6bqnWPECS3wH1PQ3i-zqVMVyrPfQZHfrmBdrDSF3uLjBrRPc9IpRAgrDmoDFdTwQ1AFjncJ99UoP8iLeGz9lK8eCItjqhFtqQKFX_rjCEmiJ91MlUOxe8b_RAq0fMcQ1_9tCmPtvzWIW46k_zD8VDzqj6n4goi-Ha5G2gpzkbwJm3HH3PCvswGFv6Zu8lrGJbVBL_IH01BRn06AmqJteiEVEBUEe9sGoCyMD7csHwLSdAm1bimUlh8dGRbfXRFTxK8dyq60Dngq9c8x2p0Vg&h=sDMB95uoNsvtYAGIYiThSqb9AqSVl6nYXn9G9pjx7ks + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/b6c6977e-d672-4666-8a62-09d2a8f342f1?api-version=2023-06-01-preview&t=638400902843107279&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=YNQp3-PMNkyFNNchsNs__ewXi0Z-CKgEQlEgIzKI7jUk83p5sjP_63n0UjhdWZXD2t-SOnCyqDuZeswWr5M1_eJJca4A5LGcbsv-Td4XsAWFXHkCOMPfF8hJGmFxm65jM1I8hajZ1Yfa30kTne8UTX7XhVbD6qfgOjkCLhcR5ZgUcRKEeS0LapYdZVoviIcpRi9SdeQMboCQKvwVGMd1fbNcrqq6RNthLuXr3cV0caPOpmqFKerVLcVNwknym2pE95q-J41VSMWX4YgiEP2FYOoctQcubXf30hFO1EhX-2asVFp7mzJc3RIoPVMNj8yodU69HkS2zjwDyKxACx1rUA&h=RdLppvwicTDkXVwXBCi-xJu_hx2tw5__xXnFJYCD3OU + method: GET + response: + body: '{"name":"b6c6977e-d672-4666-8a62-09d2a8f342f1","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/b6c6977e-d672-4666-8a62-09d2a8f342f1?api-version=2023-06-01-preview&t=638400902843107279&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=YNQp3-PMNkyFNNchsNs__ewXi0Z-CKgEQlEgIzKI7jUk83p5sjP_63n0UjhdWZXD2t-SOnCyqDuZeswWr5M1_eJJca4A5LGcbsv-Td4XsAWFXHkCOMPfF8hJGmFxm65jM1I8hajZ1Yfa30kTne8UTX7XhVbD6qfgOjkCLhcR5ZgUcRKEeS0LapYdZVoviIcpRi9SdeQMboCQKvwVGMd1fbNcrqq6RNthLuXr3cV0caPOpmqFKerVLcVNwknym2pE95q-J41VSMWX4YgiEP2FYOoctQcubXf30hFO1EhX-2asVFp7mzJc3RIoPVMNj8yodU69HkS2zjwDyKxACx1rUA&h=RdLppvwicTDkXVwXBCi-xJu_hx2tw5__xXnFJYCD3OU + method: GET + response: + body: '{"name":"b6c6977e-d672-4666-8a62-09d2a8f342f1","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "87" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"},"systemData":{"createdAt":"2001-02-03T04:05:06Z"},"properties":{"replica":{"role":"Primary","capacity":5},"storage":{"type":"","iops":500,"tier":"P10","storageSizeGB":128,"autoGrow":"Disabled"},"network":{"publicNetworkAccess":"Enabled"},"dataEncryption":{"type":"SystemManaged"},"authConfig":{"activeDirectoryAuth":"Disabled","passwordAuth":"Enabled"},"fullyQualifiedDomainName":"asotest-postgresql-sewqae.postgres.database.azure.com","version":"16","minorVersion":"0","administratorLogin":"myadmin","state":"Ready","availabilityZone":"1","backup":{"backupRetentionDays":7,"geoRedundantBackup":"Disabled","earliestRestoreDate":"2024-01-05T22:12:34.2148664+00:00"},"highAvailability":{"mode":"Disabled","state":"NotEnabled"},"maintenanceWindow":{"customWindow":"Disabled","dayOfWeek":0,"startHour":0,"startMinute":0},"replicationRole":"Primary","replicaCapacity":5},"location":"UK + South","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae","name":"asotest-postgresql-sewqae","type":"Microsoft.DBforPostgreSQL/flexibleServers"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "88" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"},"systemData":{"createdAt":"2001-02-03T04:05:06Z"},"properties":{"replica":{"role":"Primary","capacity":5},"storage":{"type":"","iops":500,"tier":"P10","storageSizeGB":128,"autoGrow":"Disabled"},"network":{"publicNetworkAccess":"Enabled"},"dataEncryption":{"type":"SystemManaged"},"authConfig":{"activeDirectoryAuth":"Disabled","passwordAuth":"Enabled"},"fullyQualifiedDomainName":"asotest-postgresql-sewqae.postgres.database.azure.com","version":"16","minorVersion":"0","administratorLogin":"myadmin","state":"Ready","availabilityZone":"1","backup":{"backupRetentionDays":7,"geoRedundantBackup":"Disabled","earliestRestoreDate":"2024-01-05T22:12:34.2148664+00:00"},"highAvailability":{"mode":"Disabled","state":"NotEnabled"},"maintenanceWindow":{"customWindow":"Disabled","dayOfWeek":0,"startHour":0,"startMinute":0},"replicationRole":"Primary","replicaCapacity":5},"location":"UK + South","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae","name":"asotest-postgresql-sewqae","type":"Microsoft.DBforPostgreSQL/flexibleServers"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "89" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"},"systemData":{"createdAt":"2001-02-03T04:05:06Z"},"properties":{"replica":{"role":"Primary","capacity":5},"storage":{"type":"","iops":500,"tier":"P10","storageSizeGB":128,"autoGrow":"Disabled"},"network":{"publicNetworkAccess":"Enabled"},"dataEncryption":{"type":"SystemManaged"},"authConfig":{"activeDirectoryAuth":"Disabled","passwordAuth":"Enabled"},"fullyQualifiedDomainName":"asotest-postgresql-sewqae.postgres.database.azure.com","version":"16","minorVersion":"0","administratorLogin":"myadmin","state":"Ready","availabilityZone":"1","backup":{"backupRetentionDays":7,"geoRedundantBackup":"Disabled","earliestRestoreDate":"2024-01-05T22:12:34.2148664+00:00"},"highAvailability":{"mode":"Disabled","state":"NotEnabled"},"maintenanceWindow":{"customWindow":"Disabled","dayOfWeek":0,"startHour":0,"startMinute":0},"replicationRole":"Primary","replicaCapacity":5},"location":"UK + South","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae","name":"asotest-postgresql-sewqae","type":"Microsoft.DBforPostgreSQL/flexibleServers"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","maintenanceWindow":{"customWindow":"enabled","dayOfWeek":5},"storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "314" + Content-Type: + - application/json + Test-Request-Attempt: + - "44" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/44635d7b-370d-4237-8ae2-3ea91150c142?api-version=2023-06-01-preview&t=638400903512368821&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=OBJS_hj-8Fknri1694qrnlNlNFQGiAqbWyK94PM7K0_L8Bi6nNqgOHQzOVAuSF3MzSWmxcOA6d5uD515SGYTdDZpMOLFBYzv0nfE12YvkOnGl5odCxZOfCsvnMQAMPg1LoC8A94jAVFyS4Sz58UDkv6R7gAezjqhnYMIeRAIJ7l_kM1F3NrjyVSQZbMIxVWxSJhSwDx2TOABkGGVFtx2_N-lybLemTIWs_amrWZNXGAwPmgJhsoykIoOKZFjiY_jjwc4KWO2XLqyQ9aNDMFkTeLdcmpxaQBPCvq2TE06x4sHVH7ipUK2teRa42zkhfogV1YeIWVOhb0jZQ_vYP6-pw&h=WZyGpeyBuIztQ3yE2xJ8elqIylS5Ofr9Y3kjaXpRThY + Cache-Control: + - no-cache + Content-Length: + - "88" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/44635d7b-370d-4237-8ae2-3ea91150c142?api-version=2023-06-01-preview&t=638400903512525059&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=E-JA-RHjWlIxr5A2GNE2LRbKfUr5pq5rMktsa7zJ4tHs3BjYignW8x8S1QaNjgi7TVcG38MPe23BuH6Kkjo0rgA9a4qYm2tagSFrKBLBsVhLxCwC0DPqYZxKZTl8F5KC-5vnypazgq9XZ4SBmtbl_dXCh2jsRnpnoVl_M9neJ5L54P18Kf7IMzJqsjhO3n87UBK0EwnS9RduSpEWApSpsLEa1E19F9H20VWGSFPVc1OuHeUcWqeobAZfELRmkz7oVQwWOOQJDm1br_gXyUSzmLHs23sog4dik3YpksmkkX31CKOgoAxdAilkJKmEFrJ7-A-Tie67CWfROZu5fflEOA&h=NS3pXBs5H3p8GwvM5E7_HEVKvggWw4OZ6dOGF3qiOY0 + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/44635d7b-370d-4237-8ae2-3ea91150c142?api-version=2023-06-01-preview&t=638400903512368821&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=OBJS_hj-8Fknri1694qrnlNlNFQGiAqbWyK94PM7K0_L8Bi6nNqgOHQzOVAuSF3MzSWmxcOA6d5uD515SGYTdDZpMOLFBYzv0nfE12YvkOnGl5odCxZOfCsvnMQAMPg1LoC8A94jAVFyS4Sz58UDkv6R7gAezjqhnYMIeRAIJ7l_kM1F3NrjyVSQZbMIxVWxSJhSwDx2TOABkGGVFtx2_N-lybLemTIWs_amrWZNXGAwPmgJhsoykIoOKZFjiY_jjwc4KWO2XLqyQ9aNDMFkTeLdcmpxaQBPCvq2TE06x4sHVH7ipUK2teRa42zkhfogV1YeIWVOhb0jZQ_vYP6-pw&h=WZyGpeyBuIztQ3yE2xJ8elqIylS5Ofr9Y3kjaXpRThY + method: GET + response: + body: '{"name":"44635d7b-370d-4237-8ae2-3ea91150c142","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "90" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"},"systemData":{"createdAt":"2001-02-03T04:05:06Z"},"properties":{"replica":{"role":"Primary","capacity":5},"storage":{"type":"","iops":500,"tier":"P10","storageSizeGB":128,"autoGrow":"Disabled"},"network":{"publicNetworkAccess":"Enabled"},"dataEncryption":{"type":"SystemManaged"},"authConfig":{"activeDirectoryAuth":"Disabled","passwordAuth":"Enabled"},"fullyQualifiedDomainName":"asotest-postgresql-sewqae.postgres.database.azure.com","version":"16","minorVersion":"0","administratorLogin":"myadmin","state":"Ready","availabilityZone":"1","backup":{"backupRetentionDays":7,"geoRedundantBackup":"Disabled","earliestRestoreDate":"2024-01-05T22:12:34.2148664+00:00"},"highAvailability":{"mode":"Disabled","state":"NotEnabled"},"maintenanceWindow":{"customWindow":"Enabled","dayOfWeek":5,"startHour":0,"startMinute":0},"replicationRole":"Primary","replicaCapacity":5},"location":"UK + South","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae","name":"asotest-postgresql-sewqae","type":"Microsoft.DBforPostgreSQL/flexibleServers"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "91" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"},"systemData":{"createdAt":"2001-02-03T04:05:06Z"},"properties":{"replica":{"role":"Primary","capacity":5},"storage":{"type":"","iops":500,"tier":"P10","storageSizeGB":128,"autoGrow":"Disabled"},"network":{"publicNetworkAccess":"Enabled"},"dataEncryption":{"type":"SystemManaged"},"authConfig":{"activeDirectoryAuth":"Disabled","passwordAuth":"Enabled"},"fullyQualifiedDomainName":"asotest-postgresql-sewqae.postgres.database.azure.com","version":"16","minorVersion":"0","administratorLogin":"myadmin","state":"Ready","availabilityZone":"1","backup":{"backupRetentionDays":7,"geoRedundantBackup":"Disabled","earliestRestoreDate":"2024-01-05T22:12:34.2148664+00:00"},"highAvailability":{"mode":"Disabled","state":"NotEnabled"},"maintenanceWindow":{"customWindow":"Enabled","dayOfWeek":5,"startHour":0,"startMinute":0},"replicationRole":"Primary","replicaCapacity":5},"location":"UK + South","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae","name":"asotest-postgresql-sewqae","type":"Microsoft.DBforPostgreSQL/flexibleServers"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae/firewallRules/asotest-fwrule-ynocke?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The specified resource asotest-fwrule-ynocke + was not found."}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "109" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "92" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"},"systemData":{"createdAt":"2001-02-03T04:05:06Z"},"properties":{"replica":{"role":"Primary","capacity":5},"storage":{"type":"","iops":500,"tier":"P10","storageSizeGB":128,"autoGrow":"Disabled"},"network":{"publicNetworkAccess":"Enabled"},"dataEncryption":{"type":"SystemManaged"},"authConfig":{"activeDirectoryAuth":"Disabled","passwordAuth":"Enabled"},"fullyQualifiedDomainName":"asotest-postgresql-sewqae.postgres.database.azure.com","version":"16","minorVersion":"0","administratorLogin":"myadmin","state":"Ready","availabilityZone":"1","backup":{"backupRetentionDays":7,"geoRedundantBackup":"Disabled","earliestRestoreDate":"2024-01-05T22:12:34.2148664+00:00"},"highAvailability":{"mode":"Disabled","state":"NotEnabled"},"maintenanceWindow":{"customWindow":"Enabled","dayOfWeek":5,"startHour":0,"startMinute":0},"replicationRole":"Primary","replicaCapacity":5},"location":"UK + South","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae","name":"asotest-postgresql-sewqae","type":"Microsoft.DBforPostgreSQL/flexibleServers"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: '{"name":"pgaudit.log","properties":{"source":"user-override","value":"READ"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "77" + Content-Type: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae/configurations/pgaudit.log?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpdateConfigurationManagementOperation","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/4fa6a451-f870-4342-b251-5a4da7e700d6?api-version=2023-06-01-preview&t=638400903554402802&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=bMd3YBM0VuTfi8YJ2YutU-V8CcLvoe1fiA7R8e9txHGxgcr6nX6fzuSn4gbNQda-whfgJiOBX3_48yfxjHKcYCgzqLanAxdMr4-FtRrZxkUaubhbJVXrG3EYxKzhuLlVzXUbBpqs1QL6qYf3_LugOkLLd8J-nFjgRbffpHWrlJTbONNoCPQn1AE43nsX2-0WO-M6LQbSeF4MgsiCe8myHwxIULSewI8-UQE2WYDR7kkxMA9GMSR8SbkwKSIwfwmXnN5GqytcF8fC4Z9IN8hu8ymDXAmIsB9Vv2PFnOnM1wk8maOvToBY2ieGpRpXl5IahQBAtq0h4MqQwcVdoRo24w&h=jBQ3VjlAZKrEz3gbrCbleGqJj78FA3CaAvMIFkYPiGg + Cache-Control: + - no-cache + Content-Length: + - "93" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/4fa6a451-f870-4342-b251-5a4da7e700d6?api-version=2023-06-01-preview&t=638400903554559032&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=bd1Mw1M_M9mulKbrBlXnGfEduxte6KfKltl5eMs1aewniXI1g5kPP71y9zlgUu9pipik-JGUnznAWQuBMOPEfCox5CLdY8WPYeITuNkc2o-45icdMfk9Wy2fuq1Gb2ZnMR0ScJdoczg87CtQiufN1wnUTZAez79NXLrquk3CzFMFSARt4pzspGd_YyLfUrzLKlXD7NHsQoRfx9fmiBApg9wd47uQIAKV3TMcnp813BcRMMb7-qdtgvFHgigBrzIL26q5fq-9kRFQ4QHO09rFukzppLOZICPhagXyediG1ubOfz2iHW4cAcS5wyoU-GBy2B30icl1oEe6-Rm1J6r5EQ&h=HjiIHlq2rEjos5mKyFQJNEnw1eFKfxNlc4ULXSuqBEU + Pragma: + - no-cache + Retry-After: + - "10" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae/databases/asotest-db-tlcwhm?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The requested resource of + type ''Microsoft.DBforPostgreSQL/flexibleServers/databases'' with name ''asotest-db-tlcwhm'' + was not found."}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "179" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"name":"asotest-fwrule-ynocke","properties":{"endIpAddress":"1.2.3.4","startIpAddress":"1.2.3.4"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "99" + Content-Type: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae/firewallRules/asotest-fwrule-ynocke?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerFirewallRulesManagementOperation","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/d3d5563f-c1c5-498a-8bb4-86424606743b?api-version=2023-06-01-preview&t=638400903560653147&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=KRhkcFSR5FGTI29i10Uq_uRdVx3K_ujIzyu86pY7ff_BjEanfJBOgdYV45kV6xLM3eTPG_ZTBoMhdcBBPRjbCytIvVlpBLY7_va9iZEJOdaw64LCXrCRiuwQ9jRtf2ZkPtM4eLYdKRgDu_d5dIL2o-YAWnjeHCvJ1aSYb4vJnPFwjiv8SNMTY9z8uPuq2CwKkPB7ci-FFuD5ff-MD7WFjZPKRLfA1CVLbNiDddaoM9ey6sy13RmlUDuLEOVly-MJsPg3ZSCyPrS6DESXffYf1xBBAH5ytPWXAG7lRS7yuJYBRq9KFVI3emG68RHQFoLl5cEnJh6jVnm62t2Fa24VVw&h=Thcva3yRQ8xl6HY5PP3UNlPMqZw-MvUQ06gEh1SNzUk + Cache-Control: + - no-cache + Content-Length: + - "99" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/d3d5563f-c1c5-498a-8bb4-86424606743b?api-version=2023-06-01-preview&t=638400903560809368&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=CJFzBKImLvub4lPNv_s-1WKD5E-Bj4v09aT6AmdgxAwKV5fCTuLhmbgpHohay5EF69aqfEHVW0WtLwiBz6CLGYEQR5R-3n6v94jx2ie4UBLc3IVZQI2M2q6f5RRXtsu_73pdyQbDD0C6HOqJ155wo9RVsVNtDdJBK_oCh4W0eqmu-O7Tdkb0pLOY_lxZfjfeZjgIpaRcBDeyNp4XSSjntJxxhZGKxNSsGXJbYCdKehIqAsRXbG1OSr2DSUBoUVggmdmFpHsy-ynEOFGLEUzY4ruiN2xeHBoapGD_lf8-PO1vvRo0apok1vnxBDhkfyuocYoATt4TRDMmfV0kY0PRAQ&h=LncAIUVHP32OVfnH0x5rAX1cLZ171Xb1HwUkWcnrQrA + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","maintenanceWindow":{"customWindow":"enabled","dayOfWeek":5},"storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "314" + Content-Type: + - application/json + Test-Request-Attempt: + - "45" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/85b4c039-2c53-4f46-a9e1-377ee0eeca8b?api-version=2023-06-01-preview&t=638400903562840799&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=RxaOeQaEgxKa0RYX4nFSSFDQSyyM5V3UKnlDI39lo9y7p6pJtq2Muij9ZkaHFidwfFF-lK5tbud337CxRyZhQ5t-_uwimtx4P1JMsDdLWWNXlUFJn7aBU6VVUKCzfqIN0NV4vP-uvs7-LYKd7F8uH4sqOHY4t33u6mShxHS-xEl8v6uPW4dvyFdfhBzIqbYdAoJpI2KVY5LSqpcwogfjmiSR_M7nB4p6F_R6GUxgxuHOGg4fxZ59dqChn7D0xxfnjcH9eMM6OMcK2VLQbOCZ_Drww8Jd_r3OymGZogsoe7QuWtS6yCcH_E759I3_H-EXwL29X2Vyiby33UYsoQlMFQ&h=F8T95Yrfq2Rpdi08X2BVRHVcGtBYkEsUPvZ3PW1Gi1U + Cache-Control: + - no-cache + Content-Length: + - "88" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/85b4c039-2c53-4f46-a9e1-377ee0eeca8b?api-version=2023-06-01-preview&t=638400903562997041&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=dyFbsy0A2pVqfJqE95d85Uy1jrMDqpUPUs5wqClIQz3PDSj9_U-R0-4jKbz6wmr1Poa0Cy_4MmRGnpM2poke4ccykqd2hdVF-sq75lHJXQb33pQgNE8Ha715lgRTfNjOE_DmLoA9Pd4K4IDO219_5H9_uqtw3IYX2tQOWfb564780JOO41USg3zsJi6GKgEkNDH228PvNIb0GfX8zwSipYuiROyUEeK-cwLaf8YdYl4YVL6f-_y2FWJgGpeynseGD2-8s9DXbSy9HwZXq6jN0SCHH1SAmI8FDrNU9HIwCi952pRce3BnZzIijfXBJuc-40przbWJwclVoZ798xsG8w&h=4lu4PRAu_gU47Urz8a8fFWgU1lk_Y_jZkW-x2q_HEJI + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: '{"name":"asotest-db-tlcwhm","properties":{"charset":"utf8"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "60" + Content-Type: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae/databases/asotest-db-tlcwhm?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerDatabaseManagementOperation","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/26752f4d-111e-4ef7-8618-6acdbfb12cf7?api-version=2023-06-01-preview&t=638400903564247115&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=Lh0PR6SRsY3FdsRFG5SSvmEbXrFwxpiHd4pIsK2BX5zpGWHKgV6U5z8HpfobGvbiRnwiZRmI1uLFSgSrti_D20yAds8huziJLOrQyswE7U77nkOZVGWt8sBKfS3LNUHDbPmKdnclV6stzVhFkkopFG72n93-azgF-cdbA4fnTWZy97DtbVLsvVd6QrjfKZCpCS_bm3OIUzFK7gt8eS7TrrIOC2UKjCvpXLDbo8Tn_NEKKINoxLRE45w25dmNgd5MtP1qcHmFb6HNuxyYiK1IZI6IGVbGTe_6oKVMqQffC-D_aUb6dtZQ7tIJY9WrdHtG_COxBVvg2zzZRv2-D3i9IA&h=ybkf1BIityjs_bl22i7JILiZ8dG1rhBRcbBdE5t_iH4 + Cache-Control: + - no-cache + Content-Length: + - "94" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/26752f4d-111e-4ef7-8618-6acdbfb12cf7?api-version=2023-06-01-preview&t=638400903564403397&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=diwNf6Vi3Hs9qHpwUg6iUA-5lqLUkB_KrpZHDyQZfX4ayxRnnR2eVya_kee_vYvpn57KxbmI2Ab0mcLmpqwaCokDZjFP88Fgtr4qZEG-SPiIO7KUwtCeJq8EnRs7JyxikSscIuO9MZjKIPrRFciep0Q9-ncu5YI6wbbW5Aqaa9hqoq0aGmnwHQYxLkJO47-Wg3mqN1z4L_8ZdbZEC8f_2aQ0QCI03c8wc1hdQ1p-NDEdMmQhI2q51ptojTktrl3AzEmDmO2GlsfoglgKnqWjMMMpRwJIWZlu4-Vjwol8jCliIp_D8bORoQ-Wp4qHxdVguH8-KFz5vRWr009SRYHdXw&h=EZqINATeVTRLqmxmVixizpe8WCs22_vbnNSY9zqxh5w + Pragma: + - no-cache + Retry-After: + - "10" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/4fa6a451-f870-4342-b251-5a4da7e700d6?api-version=2023-06-01-preview&t=638400903554402802&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=bMd3YBM0VuTfi8YJ2YutU-V8CcLvoe1fiA7R8e9txHGxgcr6nX6fzuSn4gbNQda-whfgJiOBX3_48yfxjHKcYCgzqLanAxdMr4-FtRrZxkUaubhbJVXrG3EYxKzhuLlVzXUbBpqs1QL6qYf3_LugOkLLd8J-nFjgRbffpHWrlJTbONNoCPQn1AE43nsX2-0WO-M6LQbSeF4MgsiCe8myHwxIULSewI8-UQE2WYDR7kkxMA9GMSR8SbkwKSIwfwmXnN5GqytcF8fC4Z9IN8hu8ymDXAmIsB9Vv2PFnOnM1wk8maOvToBY2ieGpRpXl5IahQBAtq0h4MqQwcVdoRo24w&h=jBQ3VjlAZKrEz3gbrCbleGqJj78FA3CaAvMIFkYPiGg + method: GET + response: + body: '{"name":"4fa6a451-f870-4342-b251-5a4da7e700d6","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "10" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/d3d5563f-c1c5-498a-8bb4-86424606743b?api-version=2023-06-01-preview&t=638400903560653147&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=KRhkcFSR5FGTI29i10Uq_uRdVx3K_ujIzyu86pY7ff_BjEanfJBOgdYV45kV6xLM3eTPG_ZTBoMhdcBBPRjbCytIvVlpBLY7_va9iZEJOdaw64LCXrCRiuwQ9jRtf2ZkPtM4eLYdKRgDu_d5dIL2o-YAWnjeHCvJ1aSYb4vJnPFwjiv8SNMTY9z8uPuq2CwKkPB7ci-FFuD5ff-MD7WFjZPKRLfA1CVLbNiDddaoM9ey6sy13RmlUDuLEOVly-MJsPg3ZSCyPrS6DESXffYf1xBBAH5ytPWXAG7lRS7yuJYBRq9KFVI3emG68RHQFoLl5cEnJh6jVnm62t2Fa24VVw&h=Thcva3yRQ8xl6HY5PP3UNlPMqZw-MvUQ06gEh1SNzUk + method: GET + response: + body: '{"name":"d3d5563f-c1c5-498a-8bb4-86424606743b","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/85b4c039-2c53-4f46-a9e1-377ee0eeca8b?api-version=2023-06-01-preview&t=638400903562840799&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=RxaOeQaEgxKa0RYX4nFSSFDQSyyM5V3UKnlDI39lo9y7p6pJtq2Muij9ZkaHFidwfFF-lK5tbud337CxRyZhQ5t-_uwimtx4P1JMsDdLWWNXlUFJn7aBU6VVUKCzfqIN0NV4vP-uvs7-LYKd7F8uH4sqOHY4t33u6mShxHS-xEl8v6uPW4dvyFdfhBzIqbYdAoJpI2KVY5LSqpcwogfjmiSR_M7nB4p6F_R6GUxgxuHOGg4fxZ59dqChn7D0xxfnjcH9eMM6OMcK2VLQbOCZ_Drww8Jd_r3OymGZogsoe7QuWtS6yCcH_E759I3_H-EXwL29X2Vyiby33UYsoQlMFQ&h=F8T95Yrfq2Rpdi08X2BVRHVcGtBYkEsUPvZ3PW1Gi1U + method: GET + response: + body: '{"name":"85b4c039-2c53-4f46-a9e1-377ee0eeca8b","status":"Failed","startTime":"2001-02-03T04:05:06Z","error":{"code":"ProvisioningServerBusy","message":"Server + asotest-postgresql-sewqae is busy with other operations. Please try later"}}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/26752f4d-111e-4ef7-8618-6acdbfb12cf7?api-version=2023-06-01-preview&t=638400903564247115&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=Lh0PR6SRsY3FdsRFG5SSvmEbXrFwxpiHd4pIsK2BX5zpGWHKgV6U5z8HpfobGvbiRnwiZRmI1uLFSgSrti_D20yAds8huziJLOrQyswE7U77nkOZVGWt8sBKfS3LNUHDbPmKdnclV6stzVhFkkopFG72n93-azgF-cdbA4fnTWZy97DtbVLsvVd6QrjfKZCpCS_bm3OIUzFK7gt8eS7TrrIOC2UKjCvpXLDbo8Tn_NEKKINoxLRE45w25dmNgd5MtP1qcHmFb6HNuxyYiK1IZI6IGVbGTe_6oKVMqQffC-D_aUb6dtZQ7tIJY9WrdHtG_COxBVvg2zzZRv2-D3i9IA&h=ybkf1BIityjs_bl22i7JILiZ8dG1rhBRcbBdE5t_iH4 + method: GET + response: + body: '{"name":"26752f4d-111e-4ef7-8618-6acdbfb12cf7","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "10" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae/databases/asotest-db-tlcwhm?api-version=2023-06-01-preview + method: GET + response: + body: '{"properties":{"charset":"UTF8","collation":"en_US.utf8"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae/databases/asotest-db-tlcwhm","name":"asotest-db-tlcwhm","type":"Microsoft.DBforPostgreSQL/flexibleServers/databases"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "93" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"},"systemData":{"createdAt":"2001-02-03T04:05:06Z"},"properties":{"replica":{"role":"Primary","capacity":5},"storage":{"type":"","iops":500,"tier":"P10","storageSizeGB":128,"autoGrow":"Disabled"},"network":{"publicNetworkAccess":"Enabled"},"dataEncryption":{"type":"SystemManaged"},"authConfig":{"activeDirectoryAuth":"Disabled","passwordAuth":"Enabled"},"fullyQualifiedDomainName":"asotest-postgresql-sewqae.postgres.database.azure.com","version":"16","minorVersion":"0","administratorLogin":"myadmin","state":"Ready","availabilityZone":"1","backup":{"backupRetentionDays":7,"geoRedundantBackup":"Disabled","earliestRestoreDate":"2024-01-05T22:12:34.2148664+00:00"},"highAvailability":{"mode":"Disabled","state":"NotEnabled"},"maintenanceWindow":{"customWindow":"Enabled","dayOfWeek":5,"startHour":0,"startMinute":0},"replicationRole":"Primary","replicaCapacity":5},"location":"UK + South","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae","name":"asotest-postgresql-sewqae","type":"Microsoft.DBforPostgreSQL/flexibleServers"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "2" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae/databases/asotest-db-tlcwhm?api-version=2023-06-01-preview + method: GET + response: + body: '{"properties":{"charset":"UTF8","collation":"en_US.utf8"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae/databases/asotest-db-tlcwhm","name":"asotest-db-tlcwhm","type":"Microsoft.DBforPostgreSQL/flexibleServers/databases"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotest-postgresql-sewqae","properties":{"administratorLogin":"myadmin","administratorLoginPassword":"{PASSWORD}","maintenanceWindow":{"customWindow":"enabled","dayOfWeek":5},"storage":{"storageSizeGB":128},"version":"16"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "314" + Content-Type: + - application/json + Test-Request-Attempt: + - "46" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/e7e156bb-bf12-4c36-b292-70fff4cf60f7?api-version=2023-06-01-preview&t=638400903603624650&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=W4wZd-47oFRKAETwt9naaVRas2LRA3naWUr9rHbQx-G4_fP6oqp2lUkgNILDGnhataKS5iXYWH-8KK47SNeEyQRJMSLzNMfh8eZlSTkogvVGNb2j7QKfhrwnvdALd67ov5KXLFawH0FxZmKR2JPU_fCZ6HZRQf2FoVKHd2JZ6ue95G1s4Pnz2_uPgVk8lv6KR3oTJu7p5hOqlFzx9FmF4OyIITZ2ROlVl_Ai1v-LDxVBmacM_TCzLyEYReUdahkFM-s3kP-WJWOcBBAikLqVk3ZbrRd6VpRv-3FWUbu3tBtFNcRdAfLPmamYgsLkOLgjS47Q1ujQa3-u1TDO6R3sWA&h=wV9hz3pB-kKxV3nTFlRxnCnDPGB80fz3WtWKvXJWjys + Cache-Control: + - no-cache + Content-Length: + - "88" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/e7e156bb-bf12-4c36-b292-70fff4cf60f7?api-version=2023-06-01-preview&t=638400903603780926&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=f3lYLPRTkNG5jOGEh2iF5U2Kr9ViUyQomBY2fmwSfkhD58hE3GMExaDvsrFigRhr3Gb4a0iPyfY96otJtgD2S4kihfTrzR4oR6l3DefMveIOAgb-4ZEErwypGZpuJFGQcBbVrDsW7v-ONSOq9PxkSr560SA5YHT1l7K7xNKanoJCbARtkmZaKhgRDYMoy_5GpcDTbyYjViw_0Cka1tlojYqw6GlFQ1NuT3BCPM0UDH6bvcW4l196uKX0mTEP8E7WAgHMHwTlvRHnpr3klvK8Dx_wQPX8MaaLYei9ouB4LQ2GVAFZHVex9y_vORSvimvDHNt_-oXAbTzssN47AMHIRA&h=yjESJmegzBgMRnznzA22SBWqGl7mMxuoV80ts0zZ3ZU + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/e7e156bb-bf12-4c36-b292-70fff4cf60f7?api-version=2023-06-01-preview&t=638400903603624650&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=W4wZd-47oFRKAETwt9naaVRas2LRA3naWUr9rHbQx-G4_fP6oqp2lUkgNILDGnhataKS5iXYWH-8KK47SNeEyQRJMSLzNMfh8eZlSTkogvVGNb2j7QKfhrwnvdALd67ov5KXLFawH0FxZmKR2JPU_fCZ6HZRQf2FoVKHd2JZ6ue95G1s4Pnz2_uPgVk8lv6KR3oTJu7p5hOqlFzx9FmF4OyIITZ2ROlVl_Ai1v-LDxVBmacM_TCzLyEYReUdahkFM-s3kP-WJWOcBBAikLqVk3ZbrRd6VpRv-3FWUbu3tBtFNcRdAfLPmamYgsLkOLgjS47Q1ujQa3-u1TDO6R3sWA&h=wV9hz3pB-kKxV3nTFlRxnCnDPGB80fz3WtWKvXJWjys + method: GET + response: + body: '{"name":"e7e156bb-bf12-4c36-b292-70fff4cf60f7","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "94" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"},"systemData":{"createdAt":"2001-02-03T04:05:06Z"},"properties":{"replica":{"role":"Primary","capacity":5},"storage":{"type":"","iops":500,"tier":"P10","storageSizeGB":128,"autoGrow":"Disabled"},"network":{"publicNetworkAccess":"Enabled"},"dataEncryption":{"type":"SystemManaged"},"authConfig":{"activeDirectoryAuth":"Disabled","passwordAuth":"Enabled"},"fullyQualifiedDomainName":"asotest-postgresql-sewqae.postgres.database.azure.com","version":"16","minorVersion":"0","administratorLogin":"myadmin","state":"Ready","availabilityZone":"1","backup":{"backupRetentionDays":7,"geoRedundantBackup":"Disabled","earliestRestoreDate":"2024-01-05T22:12:34.2148664+00:00"},"highAvailability":{"mode":"Disabled","state":"NotEnabled"},"maintenanceWindow":{"customWindow":"Enabled","dayOfWeek":5,"startHour":0,"startMinute":0},"replicationRole":"Primary","replicaCapacity":5},"location":"UK + South","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae","name":"asotest-postgresql-sewqae","type":"Microsoft.DBforPostgreSQL/flexibleServers"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "95" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"},"systemData":{"createdAt":"2001-02-03T04:05:06Z"},"properties":{"replica":{"role":"Primary","capacity":5},"storage":{"type":"","iops":500,"tier":"P10","storageSizeGB":128,"autoGrow":"Disabled"},"network":{"publicNetworkAccess":"Enabled"},"dataEncryption":{"type":"SystemManaged"},"authConfig":{"activeDirectoryAuth":"Disabled","passwordAuth":"Enabled"},"fullyQualifiedDomainName":"asotest-postgresql-sewqae.postgres.database.azure.com","version":"16","minorVersion":"0","administratorLogin":"myadmin","state":"Ready","availabilityZone":"1","backup":{"backupRetentionDays":7,"geoRedundantBackup":"Disabled","earliestRestoreDate":"2024-01-05T22:12:34.2148664+00:00"},"highAvailability":{"mode":"Disabled","state":"NotEnabled"},"maintenanceWindow":{"customWindow":"Enabled","dayOfWeek":5,"startHour":0,"startMinute":0},"replicationRole":"Primary","replicaCapacity":5},"location":"UK + South","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae","name":"asotest-postgresql-sewqae","type":"Microsoft.DBforPostgreSQL/flexibleServers"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae/databases/asotest-db-tlcwhm?api-version=2023-06-01-preview + method: DELETE + response: + body: '{"operation":"DropServerDatabaseManagementOperation","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/1d21a60e-e2bb-4819-8d06-3a321ffe4900?api-version=2023-06-01-preview&t=638400903654877914&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=AKYeClVRk6A21VPnBb3yXWp2bpoOfi4ABu8hfy96J6upiL9FQouvpP5PSOxf0MoFNnrs4A68q_9WmeKpQ3_ZxBiNkr8PPJq2GTUmNURYkAXr_22g_1kRIIGXmf-Hue6e6zFccvziqjvUodFQtess0j-32rZQk8DtPgtyBEmTHzfnGowDkSkJlE_L780mZRFIaXeSBl_aJkJu36bUwyNPO3AplVQLTsxMd9Q20MBW_B3x-Vy3UhsjgcPAWiGhlUQSgmyKH-xQy7FZEirLV7TxMQ-6n90SRkK_MfEiKs2t4r_3Uu1XdIaCOxRy1dl5tkjZLUI8vl6EQJvLrheuGcXQjA&h=reCDcYXVNonsdcE2A4zfiJVoCCPSLCNt2I8Rzpugu70 + Cache-Control: + - no-cache + Content-Length: + - "92" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/1d21a60e-e2bb-4819-8d06-3a321ffe4900?api-version=2023-06-01-preview&t=638400903654877914&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=cYao_opdI3kleygY8sTOYkNFhZbmoUNFnJhDQg2Q1G1QYsbkppekYoeQqT3cPP0gcjTfItruccOOu4L6ahiZddLuUPzHUtcqiH3GCDT_hWoLGrCF4QnXYWaneBhEdD72rrLK_fivgdFPCMjEWUQmnL_b0A_IhOTo8pwBhXVUT0dM33NdiH-xbXbH1_uAAaahqpcb0ShPPpNxouKcDEUt-PN_5IQ-oGeoGhCkn4CqZZWcM9QN1iu1pK5FbJqQp3N6IAF-hvkc8KGFc4aCGUOyHxSvtIIp3ZLRBGDpvDT8RJVibPq1g5d0KCVvjckPRIHIwIl_0WbGjjMPfpEOxR1fuA&h=tNCN9UlnGkXBSAYuoA3bWxtt_N-ASR1NLuhaFFLgh_k + Pragma: + - no-cache + Retry-After: + - "10" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/4fa6a451-f870-4342-b251-5a4da7e700d6?api-version=2023-06-01-preview&t=638400903554402802&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=bMd3YBM0VuTfi8YJ2YutU-V8CcLvoe1fiA7R8e9txHGxgcr6nX6fzuSn4gbNQda-whfgJiOBX3_48yfxjHKcYCgzqLanAxdMr4-FtRrZxkUaubhbJVXrG3EYxKzhuLlVzXUbBpqs1QL6qYf3_LugOkLLd8J-nFjgRbffpHWrlJTbONNoCPQn1AE43nsX2-0WO-M6LQbSeF4MgsiCe8myHwxIULSewI8-UQE2WYDR7kkxMA9GMSR8SbkwKSIwfwmXnN5GqytcF8fC4Z9IN8hu8ymDXAmIsB9Vv2PFnOnM1wk8maOvToBY2ieGpRpXl5IahQBAtq0h4MqQwcVdoRo24w&h=jBQ3VjlAZKrEz3gbrCbleGqJj78FA3CaAvMIFkYPiGg + method: GET + response: + body: '{"name":"4fa6a451-f870-4342-b251-5a4da7e700d6","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "10" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae/configurations/pgaudit.log?api-version=2023-06-01-preview + method: GET + response: + body: '{"properties":{"value":"READ","description":"Specifies which classes of + statements will be logged by session audit logging.","defaultValue":"none","dataType":"Set","allowedValues":"none,read,write,function,role,ddl,misc,all","source":"user-override","isDynamicConfig":true,"isReadOnly":false,"isConfigPendingRestart":false,"documentationLink":"https://github.com/pgaudit/pgaudit/blob/master/README.md"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae/configurations/pgaudit.log","name":"pgaudit.log","type":"Microsoft.DBforPostgreSQL/flexibleServers/configurations"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae/configurations/pgaudit.log?api-version=2023-06-01-preview + method: GET + response: + body: '{"properties":{"value":"READ","description":"Specifies which classes of + statements will be logged by session audit logging.","defaultValue":"none","dataType":"Set","allowedValues":"none,read,write,function,role,ddl,misc,all","source":"user-override","isDynamicConfig":true,"isReadOnly":false,"isConfigPendingRestart":false,"documentationLink":"https://github.com/pgaudit/pgaudit/blob/master/README.md"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae/configurations/pgaudit.log","name":"pgaudit.log","type":"Microsoft.DBforPostgreSQL/flexibleServers/configurations"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/1d21a60e-e2bb-4819-8d06-3a321ffe4900?api-version=2023-06-01-preview&t=638400903654877914&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=AKYeClVRk6A21VPnBb3yXWp2bpoOfi4ABu8hfy96J6upiL9FQouvpP5PSOxf0MoFNnrs4A68q_9WmeKpQ3_ZxBiNkr8PPJq2GTUmNURYkAXr_22g_1kRIIGXmf-Hue6e6zFccvziqjvUodFQtess0j-32rZQk8DtPgtyBEmTHzfnGowDkSkJlE_L780mZRFIaXeSBl_aJkJu36bUwyNPO3AplVQLTsxMd9Q20MBW_B3x-Vy3UhsjgcPAWiGhlUQSgmyKH-xQy7FZEirLV7TxMQ-6n90SRkK_MfEiKs2t4r_3Uu1XdIaCOxRy1dl5tkjZLUI8vl6EQJvLrheuGcXQjA&h=reCDcYXVNonsdcE2A4zfiJVoCCPSLCNt2I8Rzpugu70 + method: GET + response: + body: '{"name":"1d21a60e-e2bb-4819-8d06-3a321ffe4900","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "10" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/d3d5563f-c1c5-498a-8bb4-86424606743b?api-version=2023-06-01-preview&t=638400903560653147&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=KRhkcFSR5FGTI29i10Uq_uRdVx3K_ujIzyu86pY7ff_BjEanfJBOgdYV45kV6xLM3eTPG_ZTBoMhdcBBPRjbCytIvVlpBLY7_va9iZEJOdaw64LCXrCRiuwQ9jRtf2ZkPtM4eLYdKRgDu_d5dIL2o-YAWnjeHCvJ1aSYb4vJnPFwjiv8SNMTY9z8uPuq2CwKkPB7ci-FFuD5ff-MD7WFjZPKRLfA1CVLbNiDddaoM9ey6sy13RmlUDuLEOVly-MJsPg3ZSCyPrS6DESXffYf1xBBAH5ytPWXAG7lRS7yuJYBRq9KFVI3emG68RHQFoLl5cEnJh6jVnm62t2Fa24VVw&h=Thcva3yRQ8xl6HY5PP3UNlPMqZw-MvUQ06gEh1SNzUk + method: GET + response: + body: '{"name":"d3d5563f-c1c5-498a-8bb4-86424606743b","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae/firewallRules/asotest-fwrule-ynocke?api-version=2023-06-01-preview + method: GET + response: + body: '{"properties":{"startIpAddress":"1.2.3.4","endIpAddress":"1.2.3.4"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae/firewallRules/asotest-fwrule-ynocke","name":"asotest-fwrule-ynocke","type":"Microsoft.DBforPostgreSQL/flexibleServers/firewallRules"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "2" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae/firewallRules/asotest-fwrule-ynocke?api-version=2023-06-01-preview + method: GET + response: + body: '{"properties":{"startIpAddress":"1.2.3.4","endIpAddress":"1.2.3.4"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae/firewallRules/asotest-fwrule-ynocke","name":"asotest-fwrule-ynocke","type":"Microsoft.DBforPostgreSQL/flexibleServers/firewallRules"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae/firewallRules/asotest-fwrule-ynocke?api-version=2023-06-01-preview + method: DELETE + response: + body: '{"operation":"DropServerFirewallRulesManagementOperation","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/41022bd5-6fb0-4908-bc48-3e03ceae4e7a?api-version=2023-06-01-preview&t=638400904204756815&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=YkJgb3QiVLHVGRhyAPxeXozedvoeA4OqsTQD72o7RqUXU4XAgvl0ijQwy2mr5kWdL31TTUCq7xas0GLrtjTivdRtrDjLcT4LbMzofbZnUSOCuxBTUOeNCB5T8GNH7nHj91O4-MWpgFolTFtjP6IGxcbrT8e220Lra7D7VAoce_G57mXAygTbAoJfRv4rRpI68qsvs_1qBoSaybFWBR93eBjB362_9JFwqoW5Arz8fA_E5m7FTuTKqEB5mzaTSJBTB_LVx8Mr2aSqNCqz1xuihj1vXMwf9MHJR8iEfsM7zOQathsYK_i2HCtWKLYFcMNONxRFvdZOEyQu6ZeqRAtHuQ&h=53o0zW1YIMUKcb15ZowGkFWxRWBzdfbm3vby_YT8LXE + Cache-Control: + - no-cache + Content-Length: + - "96" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/41022bd5-6fb0-4908-bc48-3e03ceae4e7a?api-version=2023-06-01-preview&t=638400904204913051&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=ivzLiS9PINmeuAXDs7-d3pe5kHnxppkn5AlNPBm-rLnxVHEeaSdS4D2SeGcV2WEfGsRJ3U7jSSDPdMSvV4V4MLoEXJ-O2UrDuzDKkSVgyXtfABI3gOG5gmRB0_fMTBgosAZEDCJxa9t7WlUJbUwtw2Zt4y1PEYazfpf1p1qVJD7Y5iEZdgeJ2Md07MNJ1XHMp5qWo8A7R4tTxLKFxjSDqq8Xa7OMX4k0DSg7hCUvUkT59WhnqvcXXGCH3GsNADA0um8d1AQ-LDWxXdEXeDV3WGxM2H4MrMBSOHKTUEuf2vkN2fSYt5Z3DCgE9dANbpZonz7TOPZBDl5w1JfymA0MBg&h=w4kwKyJOgifHJiGu1OZicIIocxN-rvrJeW9E8xD0_Js + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/41022bd5-6fb0-4908-bc48-3e03ceae4e7a?api-version=2023-06-01-preview&t=638400904204756815&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=YkJgb3QiVLHVGRhyAPxeXozedvoeA4OqsTQD72o7RqUXU4XAgvl0ijQwy2mr5kWdL31TTUCq7xas0GLrtjTivdRtrDjLcT4LbMzofbZnUSOCuxBTUOeNCB5T8GNH7nHj91O4-MWpgFolTFtjP6IGxcbrT8e220Lra7D7VAoce_G57mXAygTbAoJfRv4rRpI68qsvs_1qBoSaybFWBR93eBjB362_9JFwqoW5Arz8fA_E5m7FTuTKqEB5mzaTSJBTB_LVx8Mr2aSqNCqz1xuihj1vXMwf9MHJR8iEfsM7zOQathsYK_i2HCtWKLYFcMNONxRFvdZOEyQu6ZeqRAtHuQ&h=53o0zW1YIMUKcb15ZowGkFWxRWBzdfbm3vby_YT8LXE + method: GET + response: + body: '{"name":"41022bd5-6fb0-4908-bc48-3e03ceae4e7a","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: DELETE + response: + body: '{"operation":"DropServerManagementOperation","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/UK + South/azureAsyncOperation/6570ceb7-3c3a-4865-b0a8-b9eae3e35217?api-version=2023-06-01-preview&t=638400904857142865&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=INAdMDRBVWMwNnhAzd0us5yjhncgVTQzjSs6Jw70LaYsiMlNrrOT9r9jzPm4oh5Wp5f28WUYak6N9L_NuKgCyvfY1cfgiqPFccHwnQJW612Dy2kTvkBoYBMDJ7I4IkC6ZU-MSN8wxhAXJWaI-hfrtrNt9yXoa6Hvivm4PiMBf0hKIjJRxdw5XpGDW98rcYtL8odTWJiQ7fZxKXjIaVIQk55ySYUjPCLul0gK0SPHBVHPV8C3QFlO65IxwSzY1IED_nkJws78OT3ku85Hu1STwSW2-H_6vno_g_aLj5jn6NIE018B1DkmT3nRdYWoxek5Xtus2Rr-Qb9W16DRyVLKHg&h=gbB0DddfgM1lyzh1gS-TPAh1gGUT22YDjj2bta7qVIg + Cache-Control: + - no-cache + Content-Length: + - "83" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/UK%20South/operationResults/6570ceb7-3c3a-4865-b0a8-b9eae3e35217?api-version=2023-06-01-preview&t=638400904857299337&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=X0RwYHAoHz428aFQTxJ4QG8Lp209NcZ8vo4pf1e2SflynBrcuMcNJL-YSzkmgOe76jr9-Ykol5eLV_ostNsBXAM_ZIvn3Q7p4nH33_k1Z9EDsmvBKAeeeyEy6RKSrHwBfhFtOk_KCOE0DQyGAr8KQOh1nZFGEbodv5_VGNzth_0W3fbmkktPVXnTgrbWh4n9WaRu7Te57GZ_KwEjYx4JXOYuiLelAjlQvtE6t_GMZdPy7zhWKfSXFpBWG2YfwUzefTvwj2g6m7iOYeM4gHuDKiMUKWhvQN7G6WyU54GbO7gy0D84MuTqkwD8hIyKzdTZFoQ2-A0p7XZIi_kLJohEcA&h=RyywHgjPD_NaoPstUXP9IejF2PDvY3ZomHuv-tR_4B4 + Pragma: + - no-cache + Retry-After: + - "15" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/UK%20South/azureAsyncOperation/6570ceb7-3c3a-4865-b0a8-b9eae3e35217?api-version=2023-06-01-preview&t=638400904857142865&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=INAdMDRBVWMwNnhAzd0us5yjhncgVTQzjSs6Jw70LaYsiMlNrrOT9r9jzPm4oh5Wp5f28WUYak6N9L_NuKgCyvfY1cfgiqPFccHwnQJW612Dy2kTvkBoYBMDJ7I4IkC6ZU-MSN8wxhAXJWaI-hfrtrNt9yXoa6Hvivm4PiMBf0hKIjJRxdw5XpGDW98rcYtL8odTWJiQ7fZxKXjIaVIQk55ySYUjPCLul0gK0SPHBVHPV8C3QFlO65IxwSzY1IED_nkJws78OT3ku85Hu1STwSW2-H_6vno_g_aLj5jn6NIE018B1DkmT3nRdYWoxek5Xtus2Rr-Qb9W16DRyVLKHg&h=gbB0DddfgM1lyzh1gS-TPAh1gGUT22YDjj2bta7qVIg + method: GET + response: + body: '{"name":"6570ceb7-3c3a-4865-b0a8-b9eae3e35217","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "15" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/UK%20South/azureAsyncOperation/6570ceb7-3c3a-4865-b0a8-b9eae3e35217?api-version=2023-06-01-preview&t=638400904857142865&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=INAdMDRBVWMwNnhAzd0us5yjhncgVTQzjSs6Jw70LaYsiMlNrrOT9r9jzPm4oh5Wp5f28WUYak6N9L_NuKgCyvfY1cfgiqPFccHwnQJW612Dy2kTvkBoYBMDJ7I4IkC6ZU-MSN8wxhAXJWaI-hfrtrNt9yXoa6Hvivm4PiMBf0hKIjJRxdw5XpGDW98rcYtL8odTWJiQ7fZxKXjIaVIQk55ySYUjPCLul0gK0SPHBVHPV8C3QFlO65IxwSzY1IED_nkJws78OT3ku85Hu1STwSW2-H_6vno_g_aLj5jn6NIE018B1DkmT3nRdYWoxek5Xtus2Rr-Qb9W16DRyVLKHg&h=gbB0DddfgM1lyzh1gS-TPAh1gGUT22YDjj2bta7qVIg + method: GET + response: + body: '{"name":"6570ceb7-3c3a-4865-b0a8-b9eae3e35217","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "15" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "2" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/UK%20South/azureAsyncOperation/6570ceb7-3c3a-4865-b0a8-b9eae3e35217?api-version=2023-06-01-preview&t=638400904857142865&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=INAdMDRBVWMwNnhAzd0us5yjhncgVTQzjSs6Jw70LaYsiMlNrrOT9r9jzPm4oh5Wp5f28WUYak6N9L_NuKgCyvfY1cfgiqPFccHwnQJW612Dy2kTvkBoYBMDJ7I4IkC6ZU-MSN8wxhAXJWaI-hfrtrNt9yXoa6Hvivm4PiMBf0hKIjJRxdw5XpGDW98rcYtL8odTWJiQ7fZxKXjIaVIQk55ySYUjPCLul0gK0SPHBVHPV8C3QFlO65IxwSzY1IED_nkJws78OT3ku85Hu1STwSW2-H_6vno_g_aLj5jn6NIE018B1DkmT3nRdYWoxek5Xtus2Rr-Qb9W16DRyVLKHg&h=gbB0DddfgM1lyzh1gS-TPAh1gGUT22YDjj2bta7qVIg + method: GET + response: + body: '{"name":"6570ceb7-3c3a-4865-b0a8-b9eae3e35217","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "15" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "96" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao?api-version=2020-06-01 + method: DELETE + response: + body: "" + headers: + Cache-Control: + - no-cache + Content-Length: + - "0" + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRWTE9EQU8tVUtTT1VUSCIsImpvYkxvY2F0aW9uIjoidWtzb3V0aCJ9?api-version=2020-06-01&t=638400905380300640&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=XGvmds5V9F0eMfmzu9lKyUInkx9TAIXQwveF6AITtqL85cXle5dsJrhvI4bHiFoETJDOOwEvsrJ1em2fYcCuE7EU9TS0DIcHj-Kjl_5tQUzNQ5Lg9WPNm67sxQZxM1eg3RUgt-VquF5vQ6NUmUZ9aOZb7GGM_kUSTkyESkBrDwFrHloX4nOfGJm9PfLLGtd_-HvRqKYESYwqsxGKGg4qypGAZautjVL6r5GagvVDah9OOLuRg0nf8Sq-e9GRuVHxaT0UTP6zn6MYVw7mD7414Teb-RPVZmb9D4m1OSSPJvuKl-LAgnLZkAs2qNdfwEEovMiNVpEGPX5RX_uwkTZvLQ&h=73JbnRHt7eStZISBWS8GkIx-OehwOU6hZ_C5CNcFOoE + Pragma: + - no-cache + Retry-After: + - "15" + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRWTE9EQU8tVUtTT1VUSCIsImpvYkxvY2F0aW9uIjoidWtzb3V0aCJ9?api-version=2020-06-01&t=638400905380300640&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=XGvmds5V9F0eMfmzu9lKyUInkx9TAIXQwveF6AITtqL85cXle5dsJrhvI4bHiFoETJDOOwEvsrJ1em2fYcCuE7EU9TS0DIcHj-Kjl_5tQUzNQ5Lg9WPNm67sxQZxM1eg3RUgt-VquF5vQ6NUmUZ9aOZb7GGM_kUSTkyESkBrDwFrHloX4nOfGJm9PfLLGtd_-HvRqKYESYwqsxGKGg4qypGAZautjVL6r5GagvVDah9OOLuRg0nf8Sq-e9GRuVHxaT0UTP6zn6MYVw7mD7414Teb-RPVZmb9D4m1OSSPJvuKl-LAgnLZkAs2qNdfwEEovMiNVpEGPX5RX_uwkTZvLQ&h=73JbnRHt7eStZISBWS8GkIx-OehwOU6hZ_C5CNcFOoE + method: GET + response: + body: "" + headers: + Cache-Control: + - no-cache + Content-Length: + - "0" + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRWTE9EQU8tVUtTT1VUSCIsImpvYkxvY2F0aW9uIjoidWtzb3V0aCJ9?api-version=2020-06-01&t=638400905533435440&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=BO8OiqzualiO_LqAX8747wKmimNhq78-QzdHX5dRter7Lfxx4BvGFjY20ZOCd9c3lhchS8D07m8WoNJFHrcdw112MWSABuEf1ynhPCuH5hhWJtrasvfDWRTK4KD_wh-6UAkrVg6XGXX-Eq2smWussBZ3l0S-9QLPx8vT4ZmISWf4uW-eeXW9uYBlFxxCma7-HyJn5AdxkhwwwNB6TIbGyAxFvwLE8su0RGBqO7N8s1DeZz9FKB5M5QLLzW9opqGmgJ0iOIAlzadW_FqhuhyD6Hbkp7rDgeqmrUcnNrWE1FujQNlnT5XVfKixzKB8BGtXOUQ9sydhQMhWvrU8RsSDBA&h=Cq6-fddc_x3hRxMSXYbvNeRGcHl9nnqLvUH3UVBvuNA + Pragma: + - no-cache + Retry-After: + - "15" + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRWTE9EQU8tVUtTT1VUSCIsImpvYkxvY2F0aW9uIjoidWtzb3V0aCJ9?api-version=2020-06-01&t=638400905380300640&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=XGvmds5V9F0eMfmzu9lKyUInkx9TAIXQwveF6AITtqL85cXle5dsJrhvI4bHiFoETJDOOwEvsrJ1em2fYcCuE7EU9TS0DIcHj-Kjl_5tQUzNQ5Lg9WPNm67sxQZxM1eg3RUgt-VquF5vQ6NUmUZ9aOZb7GGM_kUSTkyESkBrDwFrHloX4nOfGJm9PfLLGtd_-HvRqKYESYwqsxGKGg4qypGAZautjVL6r5GagvVDah9OOLuRg0nf8Sq-e9GRuVHxaT0UTP6zn6MYVw7mD7414Teb-RPVZmb9D4m1OSSPJvuKl-LAgnLZkAs2qNdfwEEovMiNVpEGPX5RX_uwkTZvLQ&h=73JbnRHt7eStZISBWS8GkIx-OehwOU6hZ_C5CNcFOoE + method: GET + response: + body: "" + headers: + Cache-Control: + - no-cache + Content-Length: + - "0" + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRWTE9EQU8tVUtTT1VUSCIsImpvYkxvY2F0aW9uIjoidWtzb3V0aCJ9?api-version=2020-06-01&t=638400905686257702&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=lvLOkG_kHP-YvcRyn2lIqV_C90gi2BGyHXpsA5TpdNHb27LNO8DwP8SefDUapKlDgw2_fpO91mjUxh7xs_dF-f94yGDufgT_mmhJGq3huDhNv0PmucVcb_xDPKAOi1b66G8TtvxWsY9lUKjFtZoeLf4nuQPu7uw6LZu6yZYzuyxAQ2xGlviGJEw_u99Lgs4ArAyQhM9c2KTDai5TdgcYUabjnezJ-uCvYdu4TCcmxbCop6c-RR9yoo1T3sX5qVdqSc1DLJ-9pnxB_fLmc8jaSnsFVQ0quLcPqEkTZHk9_vUzEFrh7QURd-pGHqnQ4IY2UtBkW7qnAmbp8MLFWK_wOg&h=GOkCU1Jho_9sXqo10ZId0Qj6sJD6m_IkmcO9-Y6UQwg + Pragma: + - no-cache + Retry-After: + - "15" + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "2" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRWTE9EQU8tVUtTT1VUSCIsImpvYkxvY2F0aW9uIjoidWtzb3V0aCJ9?api-version=2020-06-01&t=638400905380300640&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=XGvmds5V9F0eMfmzu9lKyUInkx9TAIXQwveF6AITtqL85cXle5dsJrhvI4bHiFoETJDOOwEvsrJ1em2fYcCuE7EU9TS0DIcHj-Kjl_5tQUzNQ5Lg9WPNm67sxQZxM1eg3RUgt-VquF5vQ6NUmUZ9aOZb7GGM_kUSTkyESkBrDwFrHloX4nOfGJm9PfLLGtd_-HvRqKYESYwqsxGKGg4qypGAZautjVL6r5GagvVDah9OOLuRg0nf8Sq-e9GRuVHxaT0UTP6zn6MYVw7mD7414Teb-RPVZmb9D4m1OSSPJvuKl-LAgnLZkAs2qNdfwEEovMiNVpEGPX5RX_uwkTZvLQ&h=73JbnRHt7eStZISBWS8GkIx-OehwOU6hZ_C5CNcFOoE + method: GET + response: + body: "" + headers: + Cache-Control: + - no-cache + Content-Length: + - "0" + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRWTE9EQU8tVUtTT1VUSCIsImpvYkxvY2F0aW9uIjoidWtzb3V0aCJ9?api-version=2020-06-01&t=638400905839236249&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=JnoBUxkQXjwqdR85RSFsY2C1yCjpGnQRd3IyIWhY4e5KN8O4STrg4bTp0r_D3tGb3XN7fdtPqg5EqRoXni36HNkSuo-Po-Ustxqq_41AY3WmmClyhvEWvWRWJsrWMdhTGHrzMrGVa4KFKa4tdMGSb8Tal8f-OQUY-pbmED6U41xfGlnE-eMIAqwfeeYO4k9okFN02KQCl8hBmQ6z3eKfVLwaNinlSUErCCLI_aDi8O4lElvamY_-RcjH687oTDfvm8VkuFUpPuG_Sw3KgeLbXn-AoewkNFxr3KsjkDuLaEzK9SUqjBI8QIw9zTDhtPiklDmzmTtd2N9TKq0xaKh1dw&h=wrdFUxcdytjnEpuVqfADZcavH-du4G18A10Bd5ww1p8 + Pragma: + - no-cache + Retry-After: + - "15" + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "3" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRWTE9EQU8tVUtTT1VUSCIsImpvYkxvY2F0aW9uIjoidWtzb3V0aCJ9?api-version=2020-06-01&t=638400905380300640&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=XGvmds5V9F0eMfmzu9lKyUInkx9TAIXQwveF6AITtqL85cXle5dsJrhvI4bHiFoETJDOOwEvsrJ1em2fYcCuE7EU9TS0DIcHj-Kjl_5tQUzNQ5Lg9WPNm67sxQZxM1eg3RUgt-VquF5vQ6NUmUZ9aOZb7GGM_kUSTkyESkBrDwFrHloX4nOfGJm9PfLLGtd_-HvRqKYESYwqsxGKGg4qypGAZautjVL6r5GagvVDah9OOLuRg0nf8Sq-e9GRuVHxaT0UTP6zn6MYVw7mD7414Teb-RPVZmb9D4m1OSSPJvuKl-LAgnLZkAs2qNdfwEEovMiNVpEGPX5RX_uwkTZvLQ&h=73JbnRHt7eStZISBWS8GkIx-OehwOU6hZ_C5CNcFOoE + method: GET + response: + body: "" + headers: + Cache-Control: + - no-cache + Content-Length: + - "0" + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRWTE9EQU8tVUtTT1VUSCIsImpvYkxvY2F0aW9uIjoidWtzb3V0aCJ9?api-version=2020-06-01&t=638400905992371022&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=MuZageqfOJmWUYAi1bvUHYCRklbjvFuy0BJplfn7CYMnsQVoGu2HUdOlXZnb0JA5Kk3L3Gk8IQrR2gKPeYQ4hEIi5qO6wSZuL8J51s8vjs6u6E1S0o1iUQfOYQgvqklv8VYVVbcrWS8yNPoz55R504rE3rYJx9q-S9nth-UZaKcj3J16a1ezEV4FWMDhnZiuSLcXhcsHAiVPvG4NZYaOEykqa97mas1uYCyV49xB8QFbMtHYQEMBj7_pct5rSoAxDlZ-l_f6KcH_CTdvr5D5cJKMzWSZhdbsvdm9e9gaRA_lxxLF5bz-NqL5e_Vc90shZg3jhojQ1yNgdAujsgUWfw&h=2KkFJ8RZe5QfxckXcSTfzfHK-pJRECz8DpOzWCFs65g + Pragma: + - no-cache + Retry-After: + - "15" + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "4" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRWTE9EQU8tVUtTT1VUSCIsImpvYkxvY2F0aW9uIjoidWtzb3V0aCJ9?api-version=2020-06-01&t=638400905380300640&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=XGvmds5V9F0eMfmzu9lKyUInkx9TAIXQwveF6AITtqL85cXle5dsJrhvI4bHiFoETJDOOwEvsrJ1em2fYcCuE7EU9TS0DIcHj-Kjl_5tQUzNQ5Lg9WPNm67sxQZxM1eg3RUgt-VquF5vQ6NUmUZ9aOZb7GGM_kUSTkyESkBrDwFrHloX4nOfGJm9PfLLGtd_-HvRqKYESYwqsxGKGg4qypGAZautjVL6r5GagvVDah9OOLuRg0nf8Sq-e9GRuVHxaT0UTP6zn6MYVw7mD7414Teb-RPVZmb9D4m1OSSPJvuKl-LAgnLZkAs2qNdfwEEovMiNVpEGPX5RX_uwkTZvLQ&h=73JbnRHt7eStZISBWS8GkIx-OehwOU6hZ_C5CNcFOoE + method: GET + response: + body: "" + headers: + Cache-Control: + - no-cache + Content-Length: + - "0" + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-vlodao/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae/configurations/pgaudit.log?api-version=2023-06-01-preview + method: DELETE + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotest-postgresql-sewqae'' + under resource group ''asotest-rg-vlodao'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "256" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" diff --git a/v2/internal/controllers/recordings/Test_Samples_CreationAndDeletion/Test_Dbforpostgresql_v1api20230601preview_CreationAndDeletion.yaml b/v2/internal/controllers/recordings/Test_Samples_CreationAndDeletion/Test_Dbforpostgresql_v1api20230601preview_CreationAndDeletion.yaml new file mode 100644 index 00000000000..b6d1f79e6ee --- /dev/null +++ b/v2/internal/controllers/recordings/Test_Samples_CreationAndDeletion/Test_Dbforpostgresql_v1api20230601preview_CreationAndDeletion.yaml @@ -0,0 +1,1255 @@ +--- +version: 1 +interactions: +- request: + body: '{"location":"westus2","name":"asotest-rg-qozojp","tags":{"CreatedAt":"2001-02-03T04:05:06Z"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "93" + Content-Type: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-qozojp?api-version=2020-06-01 + method: PUT + response: + body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-qozojp","name":"asotest-rg-qozojp","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-Content-Type-Options: + - nosniff + status: 201 Created + code: 201 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-qozojp?api-version=2020-06-01 + method: GET + response: + body: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-qozojp","name":"asotest-rg-qozojp","type":"Microsoft.Resources/resourceGroups","location":"westus2","tags":{"CreatedAt":"2001-02-03T04:05:06Z"},"properties":{"provisioningState":"Succeeded"}}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-qozojp/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotestsactur?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotestsactur'' + under resource group ''asotest-rg-qozojp'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "244" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"location":"uksouth","name":"asotestsactur","properties":{"administratorLogin":"myAdmin","administratorLoginPassword":"{PASSWORD}","storage":{"storageSizeGB":128},"version":"13"},"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "275" + Content-Type: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-qozojp/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotestsactur?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerManagementOperationV2","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/62aa36e7-b8d1-4c89-8fa9-ac2a0707c553?api-version=2023-06-01-preview&t=638400914599768898&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=BwffCaVqjcMBglgm3Z7fMyhdnz0Zf0MyyMocdIOA1dOt8w1A58VP_xZ7sIxKbmfqvvsDcuafCgrXPPNZ7j_mDLsEfh8d4RN_tG4w-g4SbHYia1yJSCO3O-f7-QBNR8grGo54t4hlY64G0NcMDK_3zyALf77hTHpnocojcQ9l4Oq6t5uPI5FwxMpQacbCoWDJsv3IliUFmdhY5-ve_xYHrAB0DQWC63umGgBuSyYDtxKztj248F3h3sLhjVEc7tc-uTJ-EK_7zcbbXWx0uGKKRNhLjFt2RGIXLDrDV2NCEEiuRQ27tjD_ofruKAd2BCT8Svx7DUTKPUbrSwt6kghYmg&h=_lFv-jevcolBfW65U-s64pSNSzK0oqdraSNnSiCJKiA + Cache-Control: + - no-cache + Content-Length: + - "88" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/62aa36e7-b8d1-4c89-8fa9-ac2a0707c553?api-version=2023-06-01-preview&t=638400914599925171&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=NVPtEcfVmQKnCxZhXY87ks-mFEW3Al489B9i2FOQoLLHU5tV2dYb5GWn4knLCFnFC-mY0bHBgxz9CZVC3nU6iaoWLZJWZmLvan1__hCL1_jIR-FGD5dyRjlABJHSJ96te7uH2T7yhe0aefnwJpVhdM7rwRosVS7dXqBPpKqWA260zZzkW8w6U_WoMFwBarXN_0zMn4YK3vTUfew3cwHw_ADUZE0WWB7f0KqG05LyZRa9Z38o1tHzox6Euk_gZ-n-Ohi7BrXQYlsV6XsBQ38jKNS-xntI6VMS3GJGDTtjErLev6zTGAVYCZHPRr4eTt01_0yzbZg6EGqYtinXZ7Vj8w&h=oxTqZu2v7FshCukRQeSaMQQ08WAxe-mXGm9Urb0ZxE0 + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/62aa36e7-b8d1-4c89-8fa9-ac2a0707c553?api-version=2023-06-01-preview&t=638400914599768898&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=BwffCaVqjcMBglgm3Z7fMyhdnz0Zf0MyyMocdIOA1dOt8w1A58VP_xZ7sIxKbmfqvvsDcuafCgrXPPNZ7j_mDLsEfh8d4RN_tG4w-g4SbHYia1yJSCO3O-f7-QBNR8grGo54t4hlY64G0NcMDK_3zyALf77hTHpnocojcQ9l4Oq6t5uPI5FwxMpQacbCoWDJsv3IliUFmdhY5-ve_xYHrAB0DQWC63umGgBuSyYDtxKztj248F3h3sLhjVEc7tc-uTJ-EK_7zcbbXWx0uGKKRNhLjFt2RGIXLDrDV2NCEEiuRQ27tjD_ofruKAd2BCT8Svx7DUTKPUbrSwt6kghYmg&h=_lFv-jevcolBfW65U-s64pSNSzK0oqdraSNnSiCJKiA + method: GET + response: + body: '{"name":"62aa36e7-b8d1-4c89-8fa9-ac2a0707c553","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/62aa36e7-b8d1-4c89-8fa9-ac2a0707c553?api-version=2023-06-01-preview&t=638400914599768898&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=BwffCaVqjcMBglgm3Z7fMyhdnz0Zf0MyyMocdIOA1dOt8w1A58VP_xZ7sIxKbmfqvvsDcuafCgrXPPNZ7j_mDLsEfh8d4RN_tG4w-g4SbHYia1yJSCO3O-f7-QBNR8grGo54t4hlY64G0NcMDK_3zyALf77hTHpnocojcQ9l4Oq6t5uPI5FwxMpQacbCoWDJsv3IliUFmdhY5-ve_xYHrAB0DQWC63umGgBuSyYDtxKztj248F3h3sLhjVEc7tc-uTJ-EK_7zcbbXWx0uGKKRNhLjFt2RGIXLDrDV2NCEEiuRQ27tjD_ofruKAd2BCT8Svx7DUTKPUbrSwt6kghYmg&h=_lFv-jevcolBfW65U-s64pSNSzK0oqdraSNnSiCJKiA + method: GET + response: + body: '{"name":"62aa36e7-b8d1-4c89-8fa9-ac2a0707c553","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "2" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/62aa36e7-b8d1-4c89-8fa9-ac2a0707c553?api-version=2023-06-01-preview&t=638400914599768898&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=BwffCaVqjcMBglgm3Z7fMyhdnz0Zf0MyyMocdIOA1dOt8w1A58VP_xZ7sIxKbmfqvvsDcuafCgrXPPNZ7j_mDLsEfh8d4RN_tG4w-g4SbHYia1yJSCO3O-f7-QBNR8grGo54t4hlY64G0NcMDK_3zyALf77hTHpnocojcQ9l4Oq6t5uPI5FwxMpQacbCoWDJsv3IliUFmdhY5-ve_xYHrAB0DQWC63umGgBuSyYDtxKztj248F3h3sLhjVEc7tc-uTJ-EK_7zcbbXWx0uGKKRNhLjFt2RGIXLDrDV2NCEEiuRQ27tjD_ofruKAd2BCT8Svx7DUTKPUbrSwt6kghYmg&h=_lFv-jevcolBfW65U-s64pSNSzK0oqdraSNnSiCJKiA + method: GET + response: + body: '{"name":"62aa36e7-b8d1-4c89-8fa9-ac2a0707c553","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "3" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/62aa36e7-b8d1-4c89-8fa9-ac2a0707c553?api-version=2023-06-01-preview&t=638400914599768898&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=BwffCaVqjcMBglgm3Z7fMyhdnz0Zf0MyyMocdIOA1dOt8w1A58VP_xZ7sIxKbmfqvvsDcuafCgrXPPNZ7j_mDLsEfh8d4RN_tG4w-g4SbHYia1yJSCO3O-f7-QBNR8grGo54t4hlY64G0NcMDK_3zyALf77hTHpnocojcQ9l4Oq6t5uPI5FwxMpQacbCoWDJsv3IliUFmdhY5-ve_xYHrAB0DQWC63umGgBuSyYDtxKztj248F3h3sLhjVEc7tc-uTJ-EK_7zcbbXWx0uGKKRNhLjFt2RGIXLDrDV2NCEEiuRQ27tjD_ofruKAd2BCT8Svx7DUTKPUbrSwt6kghYmg&h=_lFv-jevcolBfW65U-s64pSNSzK0oqdraSNnSiCJKiA + method: GET + response: + body: '{"name":"62aa36e7-b8d1-4c89-8fa9-ac2a0707c553","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-qozojp/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotestsactur?api-version=2023-06-01-preview + method: GET + response: + body: '{"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"},"systemData":{"createdAt":"2001-02-03T04:05:06Z"},"properties":{"replica":{"role":"Primary","capacity":5},"storage":{"type":"","iops":500,"tier":"P10","storageSizeGB":128,"autoGrow":"Disabled"},"network":{"publicNetworkAccess":"Enabled"},"dataEncryption":{"type":"SystemManaged"},"authConfig":{"activeDirectoryAuth":"Disabled","passwordAuth":"Enabled"},"fullyQualifiedDomainName":"asotestsactur.postgres.database.azure.com","version":"13","minorVersion":"12","administratorLogin":"myAdmin","state":"Ready","availabilityZone":"2","backup":{"backupRetentionDays":7,"geoRedundantBackup":"Disabled","earliestRestoreDate":"2024-01-05T22:44:24.2583799+00:00"},"highAvailability":{"mode":"Disabled","state":"NotEnabled"},"maintenanceWindow":{"customWindow":"Disabled","dayOfWeek":0,"startHour":0,"startMinute":0},"replicationRole":"Primary","replicaCapacity":5},"location":"UK + South","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-qozojp/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotestsactur","name":"asotestsactur","type":"Microsoft.DBforPostgreSQL/flexibleServers"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "2" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-qozojp/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotestsactur?api-version=2023-06-01-preview + method: GET + response: + body: '{"sku":{"name":"Standard_D4s_v3","tier":"GeneralPurpose"},"systemData":{"createdAt":"2001-02-03T04:05:06Z"},"properties":{"replica":{"role":"Primary","capacity":5},"storage":{"type":"","iops":500,"tier":"P10","storageSizeGB":128,"autoGrow":"Disabled"},"network":{"publicNetworkAccess":"Enabled"},"dataEncryption":{"type":"SystemManaged"},"authConfig":{"activeDirectoryAuth":"Disabled","passwordAuth":"Enabled"},"fullyQualifiedDomainName":"asotestsactur.postgres.database.azure.com","version":"13","minorVersion":"12","administratorLogin":"myAdmin","state":"Ready","availabilityZone":"2","backup":{"backupRetentionDays":7,"geoRedundantBackup":"Disabled","earliestRestoreDate":"2024-01-05T22:44:24.2583799+00:00"},"highAvailability":{"mode":"Disabled","state":"NotEnabled"},"maintenanceWindow":{"customWindow":"Disabled","dayOfWeek":0,"startHour":0,"startMinute":0},"replicationRole":"Primary","replicaCapacity":5},"location":"UK + South","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-qozojp/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotestsactur","name":"asotestsactur","type":"Microsoft.DBforPostgreSQL/flexibleServers"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-qozojp/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotestsactur/firewallRules/asotestelgdev?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The specified resource asotestelgdev + was not found."}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "101" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"name":"pgaudit.log","properties":{"source":"user-override","value":"READ"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "77" + Content-Type: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-qozojp/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotestsactur/configurations/pgaudit.log?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpdateConfigurationManagementOperation","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/17014809-1e07-4e09-b986-bb017d58688b?api-version=2023-06-01-preview&t=638400917028689905&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=g9MBZ03DCQts_Pj_5O4qrYI478RqQ_0c_Qg9VRyzDSlHnns0EphOopqE5qHB7YCEcprVzZ_LAz3JY6lJmN8zGIV4Tbc6u6azYkfE3T1_72DMrzgBCYUxd48EvQ9kl3x1AvhEW1y9lSNglSjuo7FAM3YaonPUrr303w3kBy3gc5mh7qNRQhw5mrk4jljihizeU43q2GuyIbLW0pSb_fvOihjM6mQesVdZ7iigZRB_IRpN0eRxnY9qsKb2Pq76MK9v7uR4KulaIEmutMztMPNmlbrhdEb32Rw_02Xqe0CUNBNPsNnNrJehbTMWCy-FXxdj4JqX7eV_zwD86GFYZa4_CA&h=wUdDxuu1FmLnVAv_oEExAw6lC1CcP4HSWYGBbNJeGfY + Cache-Control: + - no-cache + Content-Length: + - "93" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/17014809-1e07-4e09-b986-bb017d58688b?api-version=2023-06-01-preview&t=638400917028689905&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=MwEFxJQnf2g_ymwaqEFSEPy--nq0BjJpykCC3dypWc4wRt4HEqsP1J2UrBqjOARAv-Gr6kNAQkYuK4Fcu_uL5Vkl5f8z1CtyDpUia8NuO3Jt0WjX23MG9McFLomZHT99jTu29Y28Ne9-TPsECMRmk25rMX521kr4if5hugM21yzaDnsPrQM-F_PBsH0XED1j23K9seC2lJ4Tyk81VOnH-kzU5ovL7lV7e86lF7TAzzdVaJX81vDoYIjDq7HksOhRGbzSelFpzAmPbLx7C5tb0hIp6AQ1-btfOSpsT5DsaBnLk5UulUGj690YzLGvbN_uDIBLmh9OPKA-_D4oV3rjuw&h=iUM6J8GByIhAeboXdmUYT4zJV-0noIydD-AP-NrgWf8 + Pragma: + - no-cache + Retry-After: + - "10" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-qozojp/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotestsactur/databases/asotesttkdzfj?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The requested resource of + type ''Microsoft.DBforPostgreSQL/flexibleServers/databases'' with name ''asotesttkdzfj'' + was not found."}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "175" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 404 Not Found + code: 404 + duration: "" +- request: + body: '{"name":"asotestelgdev","properties":{"endIpAddress":"1.2.3.4","startIpAddress":"1.2.3.4"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "91" + Content-Type: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-qozojp/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotestsactur/firewallRules/asotestelgdev?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerFirewallRulesManagementOperation","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/1cef1b63-5f4f-4922-b7ea-d8389690bf11?api-version=2023-06-01-preview&t=638400917033221181&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=dKpRxQJgIz-4--BY3Q1fe-SXt_al9aO7ujIMhKAj1OKOagaR1ud1MCNnL5U--yNLlmK7wc4xxCz7yrXJrNTMUY0_H34kMK0kzZ_N3QiuLMlWcP6un-OQn8qzCfWDComnE6THkH-OY2MIqAd8AsLiDsS0Hghy4aYsFFR-kStx9nnwfmuYfkKKyHRyvtrionDQJHF1lpvjbAse9uaJkYB6JNn7pJrFAqwTT3NiD1VJH5n74tXmy2Ci5h_FO_PfhBJCUMogciBBuxJY523xQ_5GcAUm6Ce3Q7podIw1wr8PvVXTiEKrKhDWMoP5ND3tCQ__dJIA3KQA2-PSXj9rMZNMHQ&h=GZJI8VTOTL8HeCxQ8pb0Vzyr879uuWwTa94NRaH5Yb0 + Cache-Control: + - no-cache + Content-Length: + - "99" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/1cef1b63-5f4f-4922-b7ea-d8389690bf11?api-version=2023-06-01-preview&t=638400917033377437&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=FROM3z57fpHnPiSR4G4_4EX3wfevp671fhZvEARd0xjoHKExoGlj0i2hvJXGf6bLwMhJ2b_FqDmaqGPymklXYcz0jq14sY8kMg5rzga4VKnSaZtlxeKRtKjQeED145OaChccqTMznlvU3b1bv0scoCXNXT2FEElBu0AqoK-BMf4Fp6a0bIEr8r_SfDyV4-oGk9iQd6BCBLSr3wzBOF7u_7Q_Me0o9OEsWEBcrMhw01xh2d7sLmk1_7rbPuYNJ0a8Gx2Sh_PKsO49GHt03tFhXzhib6vukb1Hh6Hs3L3L5Re6w4rZZxGCtAa-WY9vkyQsQLDY8klxY_dHdVL3Ngd96Q&h=HhfFC6UUWehl20R-GEjxyVx5La0wtoBhjJHCUEuESyI + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: '{"name":"asotesttkdzfj","properties":{"charset":"utf8"}}' + form: {} + headers: + Accept: + - application/json + Content-Length: + - "56" + Content-Type: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-qozojp/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotestsactur/databases/asotesttkdzfj?api-version=2023-06-01-preview + method: PUT + response: + body: '{"operation":"UpsertServerDatabaseManagementOperation","startTime":"2001-02-03T04:05:06Z"}' + headers: + Azure-Asyncoperation: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/2901d89d-f2ef-4783-a6c1-cfe0764c19d5?api-version=2023-06-01-preview&t=638400917038221172&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=L3LmZutw8lk8ShxZNkClZk53o1-dmYAY7m5gQxFIY5QUBTGlL-xVvQZimj80S5OOIwYWr6xow1xSUh8D9mMJRmYSFid0NpxMj8SDKqvoR9ySR-Dwv43Em1lIYvwhyVkrgzw8fGWUpEKgbI4blMcpNiwZArubjpIgDrBzAB4161wXwYChfFdGmHdEcYt81IGo1IDH0iFrdo_yYtPhgIDk-rzAN_PBg86E9Wd87LyPrKljCtmghsxI4ouR-ugvbaK9u8pQBS-ZECT1p2q4lTXboC94j-f4shn6MVZCd869wXHa6-gN0LDQI4pui27BSvtK_6b8oOzkziRkF1lFIR2OdA&h=0SwAiumabBqcmpz64qEJtc_bfjrserGfY3mi7oTbHXw + Cache-Control: + - no-cache + Content-Length: + - "94" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/operationResults/2901d89d-f2ef-4783-a6c1-cfe0764c19d5?api-version=2023-06-01-preview&t=638400917038221172&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=XP15XSTAbuMHtiDv3LPKZTlK5eJeeOAQAqSy1U25qMqZ0k1JB-waELdnT912gi8erZHIRk8X5rsmzCgq4s0Ujed0O9SzMDTxkfbizkkmL_Rm3wLbfYWLOfm42WfeJbmFH6GjOhTIJavcpBy9tBWDVWqqjPgBVSMMP4UnjoWP4xsvubIvlKeG1fXTKmkiGeWzO3_QYyuJD8TuyZcwJjdyHK0NMFp8-3XlNlS6fxCivDk5wrPD5LaTerUKbaHb3oX8ot1dUzOLokGbSGuAG7c1kCZqOy1I2r9w8il0Fe7DehaRrTAiKC8sXUc2fGn8eRbYJOOdsNavpsaaQv26BI1zlw&h=TJpW9-vySymJCTj9h4Ze0l-vnVUwE-PLtt2xZ3_XA58 + Pragma: + - no-cache + Retry-After: + - "10" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/17014809-1e07-4e09-b986-bb017d58688b?api-version=2023-06-01-preview&t=638400917028689905&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=g9MBZ03DCQts_Pj_5O4qrYI478RqQ_0c_Qg9VRyzDSlHnns0EphOopqE5qHB7YCEcprVzZ_LAz3JY6lJmN8zGIV4Tbc6u6azYkfE3T1_72DMrzgBCYUxd48EvQ9kl3x1AvhEW1y9lSNglSjuo7FAM3YaonPUrr303w3kBy3gc5mh7qNRQhw5mrk4jljihizeU43q2GuyIbLW0pSb_fvOihjM6mQesVdZ7iigZRB_IRpN0eRxnY9qsKb2Pq76MK9v7uR4KulaIEmutMztMPNmlbrhdEb32Rw_02Xqe0CUNBNPsNnNrJehbTMWCy-FXxdj4JqX7eV_zwD86GFYZa4_CA&h=wUdDxuu1FmLnVAv_oEExAw6lC1CcP4HSWYGBbNJeGfY + method: GET + response: + body: '{"name":"17014809-1e07-4e09-b986-bb017d58688b","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "10" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/1cef1b63-5f4f-4922-b7ea-d8389690bf11?api-version=2023-06-01-preview&t=638400917033221181&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=dKpRxQJgIz-4--BY3Q1fe-SXt_al9aO7ujIMhKAj1OKOagaR1ud1MCNnL5U--yNLlmK7wc4xxCz7yrXJrNTMUY0_H34kMK0kzZ_N3QiuLMlWcP6un-OQn8qzCfWDComnE6THkH-OY2MIqAd8AsLiDsS0Hghy4aYsFFR-kStx9nnwfmuYfkKKyHRyvtrionDQJHF1lpvjbAse9uaJkYB6JNn7pJrFAqwTT3NiD1VJH5n74tXmy2Ci5h_FO_PfhBJCUMogciBBuxJY523xQ_5GcAUm6Ce3Q7podIw1wr8PvVXTiEKrKhDWMoP5ND3tCQ__dJIA3KQA2-PSXj9rMZNMHQ&h=GZJI8VTOTL8HeCxQ8pb0Vzyr879uuWwTa94NRaH5Yb0 + method: GET + response: + body: '{"name":"1cef1b63-5f4f-4922-b7ea-d8389690bf11","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "60" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/2901d89d-f2ef-4783-a6c1-cfe0764c19d5?api-version=2023-06-01-preview&t=638400917038221172&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=L3LmZutw8lk8ShxZNkClZk53o1-dmYAY7m5gQxFIY5QUBTGlL-xVvQZimj80S5OOIwYWr6xow1xSUh8D9mMJRmYSFid0NpxMj8SDKqvoR9ySR-Dwv43Em1lIYvwhyVkrgzw8fGWUpEKgbI4blMcpNiwZArubjpIgDrBzAB4161wXwYChfFdGmHdEcYt81IGo1IDH0iFrdo_yYtPhgIDk-rzAN_PBg86E9Wd87LyPrKljCtmghsxI4ouR-ugvbaK9u8pQBS-ZECT1p2q4lTXboC94j-f4shn6MVZCd869wXHa6-gN0LDQI4pui27BSvtK_6b8oOzkziRkF1lFIR2OdA&h=0SwAiumabBqcmpz64qEJtc_bfjrserGfY3mi7oTbHXw + method: GET + response: + body: '{"name":"2901d89d-f2ef-4783-a6c1-cfe0764c19d5","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "10" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-qozojp/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotestsactur/firewallRules/asotestelgdev?api-version=2023-06-01-preview + method: GET + response: + body: '{"properties":{"startIpAddress":"1.2.3.4","endIpAddress":"1.2.3.4"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-qozojp/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotestsactur/firewallRules/asotestelgdev","name":"asotestelgdev","type":"Microsoft.DBforPostgreSQL/flexibleServers/firewallRules"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "2" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-qozojp/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotestsactur/firewallRules/asotestelgdev?api-version=2023-06-01-preview + method: GET + response: + body: '{"properties":{"startIpAddress":"1.2.3.4","endIpAddress":"1.2.3.4"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-qozojp/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotestsactur/firewallRules/asotestelgdev","name":"asotestelgdev","type":"Microsoft.DBforPostgreSQL/flexibleServers/firewallRules"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-qozojp/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotestsactur/databases/asotesttkdzfj?api-version=2023-06-01-preview + method: GET + response: + body: '{"properties":{"charset":"UTF8","collation":"en_US.utf8"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-qozojp/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotestsactur/databases/asotesttkdzfj","name":"asotesttkdzfj","type":"Microsoft.DBforPostgreSQL/flexibleServers/databases"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "2" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-qozojp/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotestsactur/databases/asotesttkdzfj?api-version=2023-06-01-preview + method: GET + response: + body: '{"properties":{"charset":"UTF8","collation":"en_US.utf8"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-qozojp/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotestsactur/databases/asotesttkdzfj","name":"asotesttkdzfj","type":"Microsoft.DBforPostgreSQL/flexibleServers/databases"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/17014809-1e07-4e09-b986-bb017d58688b?api-version=2023-06-01-preview&t=638400917028689905&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=g9MBZ03DCQts_Pj_5O4qrYI478RqQ_0c_Qg9VRyzDSlHnns0EphOopqE5qHB7YCEcprVzZ_LAz3JY6lJmN8zGIV4Tbc6u6azYkfE3T1_72DMrzgBCYUxd48EvQ9kl3x1AvhEW1y9lSNglSjuo7FAM3YaonPUrr303w3kBy3gc5mh7qNRQhw5mrk4jljihizeU43q2GuyIbLW0pSb_fvOihjM6mQesVdZ7iigZRB_IRpN0eRxnY9qsKb2Pq76MK9v7uR4KulaIEmutMztMPNmlbrhdEb32Rw_02Xqe0CUNBNPsNnNrJehbTMWCy-FXxdj4JqX7eV_zwD86GFYZa4_CA&h=wUdDxuu1FmLnVAv_oEExAw6lC1CcP4HSWYGBbNJeGfY + method: GET + response: + body: '{"name":"17014809-1e07-4e09-b986-bb017d58688b","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "10" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "2" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/17014809-1e07-4e09-b986-bb017d58688b?api-version=2023-06-01-preview&t=638400917028689905&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=g9MBZ03DCQts_Pj_5O4qrYI478RqQ_0c_Qg9VRyzDSlHnns0EphOopqE5qHB7YCEcprVzZ_LAz3JY6lJmN8zGIV4Tbc6u6azYkfE3T1_72DMrzgBCYUxd48EvQ9kl3x1AvhEW1y9lSNglSjuo7FAM3YaonPUrr303w3kBy3gc5mh7qNRQhw5mrk4jljihizeU43q2GuyIbLW0pSb_fvOihjM6mQesVdZ7iigZRB_IRpN0eRxnY9qsKb2Pq76MK9v7uR4KulaIEmutMztMPNmlbrhdEb32Rw_02Xqe0CUNBNPsNnNrJehbTMWCy-FXxdj4JqX7eV_zwD86GFYZa4_CA&h=wUdDxuu1FmLnVAv_oEExAw6lC1CcP4HSWYGBbNJeGfY + method: GET + response: + body: '{"name":"17014809-1e07-4e09-b986-bb017d58688b","status":"InProgress","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "10" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "3" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/uksouth/azureAsyncOperation/17014809-1e07-4e09-b986-bb017d58688b?api-version=2023-06-01-preview&t=638400917028689905&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=g9MBZ03DCQts_Pj_5O4qrYI478RqQ_0c_Qg9VRyzDSlHnns0EphOopqE5qHB7YCEcprVzZ_LAz3JY6lJmN8zGIV4Tbc6u6azYkfE3T1_72DMrzgBCYUxd48EvQ9kl3x1AvhEW1y9lSNglSjuo7FAM3YaonPUrr303w3kBy3gc5mh7qNRQhw5mrk4jljihizeU43q2GuyIbLW0pSb_fvOihjM6mQesVdZ7iigZRB_IRpN0eRxnY9qsKb2Pq76MK9v7uR4KulaIEmutMztMPNmlbrhdEb32Rw_02Xqe0CUNBNPsNnNrJehbTMWCy-FXxdj4JqX7eV_zwD86GFYZa4_CA&h=wUdDxuu1FmLnVAv_oEExAw6lC1CcP4HSWYGBbNJeGfY + method: GET + response: + body: '{"name":"17014809-1e07-4e09-b986-bb017d58688b","status":"Succeeded","startTime":"2001-02-03T04:05:06Z"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Retry-After: + - "10" + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-qozojp/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotestsactur/configurations/pgaudit.log?api-version=2023-06-01-preview + method: GET + response: + body: '{"properties":{"value":"READ","description":"Specifies which classes of + statements will be logged by session audit logging.","defaultValue":"none","dataType":"Set","allowedValues":"none,read,write,function,role,ddl,misc,all","source":"user-override","isDynamicConfig":true,"isReadOnly":false,"isConfigPendingRestart":false,"documentationLink":"https://github.com/pgaudit/pgaudit/blob/master/README.md"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-qozojp/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotestsactur/configurations/pgaudit.log","name":"pgaudit.log","type":"Microsoft.DBforPostgreSQL/flexibleServers/configurations"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-qozojp/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotestsactur/configurations/pgaudit.log?api-version=2023-06-01-preview + method: GET + response: + body: '{"properties":{"value":"READ","description":"Specifies which classes of + statements will be logged by session audit logging.","defaultValue":"none","dataType":"Set","allowedValues":"none,read,write,function,role,ddl,misc,all","source":"user-override","isDynamicConfig":true,"isReadOnly":false,"isConfigPendingRestart":false,"documentationLink":"https://github.com/pgaudit/pgaudit/blob/master/README.md"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-qozojp/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotestsactur/configurations/pgaudit.log","name":"pgaudit.log","type":"Microsoft.DBforPostgreSQL/flexibleServers/configurations"}' + headers: + Cache-Control: + - no-cache + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Server: + - Microsoft-HTTPAPI/2.0 + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + Vary: + - Accept-Encoding + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-qozojp?api-version=2020-06-01 + method: DELETE + response: + body: "" + headers: + Cache-Control: + - no-cache + Content-Length: + - "0" + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRRT1pPSlAtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638400917394942119&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=BbU5Bk8xGCHNRnw_3uyVNbioW6GfRTdx1-ji5TT2nk84LqJunL2im2yVl0GSGr2uGEjiU8Qho20eZ9SnnePJpfn2KMebdheXrthMshzM5hf7BdK1VCjK0m-mwL1AOoT1kExt1euSHa5VpWi5UTus5a0i41GL1m12T_A-TMAkj5WSU5xGNSiT2L2OWn2ym2DbzrwIaB0iEoB-IerNcaUEdYfPIi1SXkrSYzb3i8dTdYCZ68yqNadWZdH3V839N-5Y5H_Pk-9M6hnRp_5kjbjmCxm0OKC-rdr6yuJ_ma91Rdihe13gIW9lbA064Uqi7CRuQFZOz0h1q8SAyhvaSeZVZw&h=i_opn0RY3BHu3PZNyCyMpFVqgDWcsWL_fDmNHJXDWtU + Pragma: + - no-cache + Retry-After: + - "15" + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRRT1pPSlAtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638400917394942119&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=BbU5Bk8xGCHNRnw_3uyVNbioW6GfRTdx1-ji5TT2nk84LqJunL2im2yVl0GSGr2uGEjiU8Qho20eZ9SnnePJpfn2KMebdheXrthMshzM5hf7BdK1VCjK0m-mwL1AOoT1kExt1euSHa5VpWi5UTus5a0i41GL1m12T_A-TMAkj5WSU5xGNSiT2L2OWn2ym2DbzrwIaB0iEoB-IerNcaUEdYfPIi1SXkrSYzb3i8dTdYCZ68yqNadWZdH3V839N-5Y5H_Pk-9M6hnRp_5kjbjmCxm0OKC-rdr6yuJ_ma91Rdihe13gIW9lbA064Uqi7CRuQFZOz0h1q8SAyhvaSeZVZw&h=i_opn0RY3BHu3PZNyCyMpFVqgDWcsWL_fDmNHJXDWtU + method: GET + response: + body: "" + headers: + Cache-Control: + - no-cache + Content-Length: + - "0" + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRRT1pPSlAtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638400917545412174&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=cu3Kh4wHzR1ci06NOEJpmUj6zBV1C6LtCd0L6_utNf856n2J06ByByW7sARaq1i0Ti_WHE0iJFGGQ5kMUbnpPCvilZ4Z-RH99bG2j3NlohlwjdU7m6iJYwSVHZPeWK2BF6wCr-vGw-whT7N9pkwroKhF8csMEQ8DzhCHMJcgslwE1ZbLS8wLPn_M2OxHmtd7M3Qqy6NLQ0ByjFscl_TTxKypC1-ZcGaJ6g1X1jawGeucR8Ja5LE_sRjFTSjLxuqFc0PmzuQhfmiFmh5emJqz8ZBj9tGqjXIbq9b75ll6P4L6JzkE5Tr2nhi64Wm_sR3BWAwah-9RHYHOVLEdxi3k1g&h=q0m7WCKFwGGmkkpyBmSWDLXQYHhGs1BXj9OzY2Yspgw + Pragma: + - no-cache + Retry-After: + - "15" + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "1" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRRT1pPSlAtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638400917394942119&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=BbU5Bk8xGCHNRnw_3uyVNbioW6GfRTdx1-ji5TT2nk84LqJunL2im2yVl0GSGr2uGEjiU8Qho20eZ9SnnePJpfn2KMebdheXrthMshzM5hf7BdK1VCjK0m-mwL1AOoT1kExt1euSHa5VpWi5UTus5a0i41GL1m12T_A-TMAkj5WSU5xGNSiT2L2OWn2ym2DbzrwIaB0iEoB-IerNcaUEdYfPIi1SXkrSYzb3i8dTdYCZ68yqNadWZdH3V839N-5Y5H_Pk-9M6hnRp_5kjbjmCxm0OKC-rdr6yuJ_ma91Rdihe13gIW9lbA064Uqi7CRuQFZOz0h1q8SAyhvaSeZVZw&h=i_opn0RY3BHu3PZNyCyMpFVqgDWcsWL_fDmNHJXDWtU + method: GET + response: + body: "" + headers: + Cache-Control: + - no-cache + Content-Length: + - "0" + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRRT1pPSlAtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638400917695725171&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=BmmcWOR1Djt5XVVU-Y_SHBNgZ4_tve0NWxWR1YZmDhj5s0lvA9742G7KuDnX3Yl419O5oT41R3Y6ymAVVpln55JNO-MTuhdZGJ1ulUtGLiJUqr5nAfGL9PPO6oD5GmWSTAixnMCfke-n6BREz0d5gzGoM5-G7p5gNlwOKGtS6p-4qYpp0fx6CDGjo0IwQZfsgD59bxyVZPYscXsnapWBXBK1FoCxMCDrvVWzd_NfyoaXJcb6eXRG9Xhk41NWyjf0MMokTnTr6wq4ySJ3c0IWoCA0fF29omLfyXb61ceuNqjsTbWF3ZJwfvGy4OgZN4qp5oWVj_jduXv1aiTzkUesRQ&h=h084j6gnpSBNgx7vaVmJMPVaVyx6rZgD-39DSAEdcfU + Pragma: + - no-cache + Retry-After: + - "15" + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "2" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRRT1pPSlAtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638400917394942119&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=BbU5Bk8xGCHNRnw_3uyVNbioW6GfRTdx1-ji5TT2nk84LqJunL2im2yVl0GSGr2uGEjiU8Qho20eZ9SnnePJpfn2KMebdheXrthMshzM5hf7BdK1VCjK0m-mwL1AOoT1kExt1euSHa5VpWi5UTus5a0i41GL1m12T_A-TMAkj5WSU5xGNSiT2L2OWn2ym2DbzrwIaB0iEoB-IerNcaUEdYfPIi1SXkrSYzb3i8dTdYCZ68yqNadWZdH3V839N-5Y5H_Pk-9M6hnRp_5kjbjmCxm0OKC-rdr6yuJ_ma91Rdihe13gIW9lbA064Uqi7CRuQFZOz0h1q8SAyhvaSeZVZw&h=i_opn0RY3BHu3PZNyCyMpFVqgDWcsWL_fDmNHJXDWtU + method: GET + response: + body: "" + headers: + Cache-Control: + - no-cache + Content-Length: + - "0" + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRRT1pPSlAtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638400917846194869&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=dLIfnqkgif_voPmBQtKutiwz9s9sZw4B_oHHCYB5UhZjZ8PCypXUAWq-edwSl-t88FNhpTD8O33wKc3g8s5RjgWWHez0GugzA7yWbZ69N66ImRiL8u_1XmK1vX4iDOH3VsnZFsroC6qIg3QIc9hfQcoUSTExQPvS15yQ6puNdcmg45a4ENlruGEuozL_s_NjXCsm1-GwWKjdE6AlclJDi5INeprL2veP0eFiALtPOG6Fg4MA3jNXvlmWB2w6BiL5g6-j86KWaNjJo8xe8KyZ5mwVEw7nCEWmocmrwZedI_z9AJ7bmSKI5GwOvYF1qqmJ-1EW9SUYGeuOUNND8oh6Ag&h=mlgq7KQXWHMG0iYJRyY4XgNXtcZ-fB0GGtb6E7AISqE + Pragma: + - no-cache + Retry-After: + - "15" + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "3" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRRT1pPSlAtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638400917394942119&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=BbU5Bk8xGCHNRnw_3uyVNbioW6GfRTdx1-ji5TT2nk84LqJunL2im2yVl0GSGr2uGEjiU8Qho20eZ9SnnePJpfn2KMebdheXrthMshzM5hf7BdK1VCjK0m-mwL1AOoT1kExt1euSHa5VpWi5UTus5a0i41GL1m12T_A-TMAkj5WSU5xGNSiT2L2OWn2ym2DbzrwIaB0iEoB-IerNcaUEdYfPIi1SXkrSYzb3i8dTdYCZ68yqNadWZdH3V839N-5Y5H_Pk-9M6hnRp_5kjbjmCxm0OKC-rdr6yuJ_ma91Rdihe13gIW9lbA064Uqi7CRuQFZOz0h1q8SAyhvaSeZVZw&h=i_opn0RY3BHu3PZNyCyMpFVqgDWcsWL_fDmNHJXDWtU + method: GET + response: + body: "" + headers: + Cache-Control: + - no-cache + Content-Length: + - "0" + Expires: + - "-1" + Location: + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRRT1pPSlAtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638400917996508928&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=Z6XbwkEpP3d4dnRXEMZ1f6MlU7e857_chptQmXN5-2Qb3MczEFDEjZGV8jas8wfOJUbSXd_auZXvFgMc3xjKN8fZb66ML58seWG7oInf-u99jfNsP0qqQ_N7XNRx5VS5e1hNr1b2Scts8-CZ96nzGbYbEQeIqfeuG_PPwKoSbzl4joGA_UZD_zoA3B54B7YoMSSqMy5qKYHivC7SR5WLQg4Ng5YwXP__2atjY4bwcKMTiZPEdPhLBg85umm0eNY6Kgd6GIZBqwBfUWeHWcJV2rM_DAmZ6o4OU_cscWTgmL8FmcJzVGWhMAIpkDvD-TX-P0aARkVGyRZkeBLIEojPvg&h=YJLF2HGq6Azu-tC8A1R1JAfeKLE3dq6xgaK3N49wGdI + Pragma: + - no-cache + Retry-After: + - "15" + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 202 Accepted + code: 202 + duration: "" +- request: + body: "" + form: {} + headers: + Test-Request-Attempt: + - "4" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1BU09URVNUOjJEUkc6MkRRT1pPSlAtV0VTVFVTMiIsImpvYkxvY2F0aW9uIjoid2VzdHVzMiJ9?api-version=2020-06-01&t=638400917394942119&c=MIIHHjCCBgagAwIBAgITfwI8ooo2761TEgO3SgAEAjyiijANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjMxMTAxMTc1NTI2WhcNMjQxMDI2MTc1NTI2WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ0WQLjgbZj70uXwL_AnKvEas1GVvOB7Og4giEY7H0L78RFiY2-CzzgMKyZV8H3ACZxqQoBMWsq9XAf4iUNAer7s23VPyWkoVdr2uTc8SCvur4qja77OTMKiRVU277ViRu_Mb-fJvQKeRO3Q8A4Sg1A63a2VQ_WlyOCHPBj-gUF0zU4SYnlqSYGcNmuhCjtHpVvF_N3CGz0JlGTo3ia0wmks2y95IHeD0lcr0AgP73_eafbKafZn4Z56GdC3lngKdhyEiQi_kPyxaydv1PfV2xX9OLKvB19e9jLB43QA9r5k5DsAhqtv6eqwHBdW07S9MCMu8kwoYUpX1TTGapizc6ECAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFggvX2K4Py0SACAWQCAQowggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBTwk8yVBP3k-Qa8LdSw6mv--mLIvDAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMBcGA1UdIAQQMA4wDAYKKwYBBAGCN3sBATAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAKR8h2puMUi3SGdIfblcEylOBfcaCRtDDIvC64QKLae7vOAe1f8SpXEFfYeIl5xydb8lEUYApxL701SQSy-NPuBuuQ0CIMKjZ-xCj9VbjQIykosQBVJvxp5I0TplyumFiehQP3zZuc1PZ2hg05aq3CKSbJGKFlow_8P9RN66yeKWGE7SWV9NZThEL8VfEXjl_ITgWb-L1SmnFKTdOVNVDQoRjjX-JqVobqh0O4K0dsPapDoAdqjIECodvocGyWtCEwIk-j8yyBxqX_JzzumMzxUMrxCjaosaJVOvoJB7vh6WuiYfHondyzaGqjm9Bjpqj46bQXojx6xALlzNX5x_j_g&s=BbU5Bk8xGCHNRnw_3uyVNbioW6GfRTdx1-ji5TT2nk84LqJunL2im2yVl0GSGr2uGEjiU8Qho20eZ9SnnePJpfn2KMebdheXrthMshzM5hf7BdK1VCjK0m-mwL1AOoT1kExt1euSHa5VpWi5UTus5a0i41GL1m12T_A-TMAkj5WSU5xGNSiT2L2OWn2ym2DbzrwIaB0iEoB-IerNcaUEdYfPIi1SXkrSYzb3i8dTdYCZ68yqNadWZdH3V839N-5Y5H_Pk-9M6hnRp_5kjbjmCxm0OKC-rdr6yuJ_ma91Rdihe13gIW9lbA064Uqi7CRuQFZOz0h1q8SAyhvaSeZVZw&h=i_opn0RY3BHu3PZNyCyMpFVqgDWcsWL_fDmNHJXDWtU + method: GET + response: + body: "" + headers: + Cache-Control: + - no-cache + Content-Length: + - "0" + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + status: 200 OK + code: 200 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "3" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-qozojp/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotestsactur?api-version=2023-06-01-preview + method: GET + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotestsactur'' + under resource group ''asotest-rg-qozojp'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "244" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-qozojp/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotestsactur?api-version=2023-06-01-preview + method: DELETE + response: + body: '{"error":{"code":"ResourceGroupNotFound","message":"Resource group ''asotest-rg-qozojp'' + 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-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-qozojp/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotestsactur/configurations/pgaudit.log?api-version=2023-06-01-preview + method: DELETE + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotestsactur'' + under resource group ''asotest-rg-qozojp'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "244" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-qozojp/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotestsactur/firewallRules/asotestelgdev?api-version=2023-06-01-preview + method: DELETE + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotestsactur'' + under resource group ''asotest-rg-qozojp'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "244" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" +- request: + body: "" + form: {} + headers: + Accept: + - application/json + Test-Request-Attempt: + - "0" + url: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/asotest-rg-qozojp/providers/Microsoft.DBforPostgreSQL/flexibleServers/asotestsactur/databases/asotesttkdzfj?api-version=2023-06-01-preview + method: DELETE + response: + body: '{"error":{"code":"ResourceNotFound","message":"The Resource ''Microsoft.DBforPostgreSQL/flexibleServers/asotestsactur'' + under resource group ''asotest-rg-qozojp'' was not found. For more details please + go to https://aka.ms/ARMResourceNotFoundFix"}}' + headers: + Cache-Control: + - no-cache + Content-Length: + - "244" + Content-Type: + - application/json; charset=utf-8 + Expires: + - "-1" + Pragma: + - no-cache + Strict-Transport-Security: + - max-age=31536000; includeSubDomains + X-Content-Type-Options: + - nosniff + X-Ms-Failure-Cause: + - gateway + status: 404 Not Found + code: 404 + duration: "" diff --git a/v2/internal/reconcilers/arm/error_classifier.go b/v2/internal/reconcilers/arm/error_classifier.go index f928dc3cd9d..f29e8c30ebd 100644 --- a/v2/internal/reconcilers/arm/error_classifier.go +++ b/v2/internal/reconcilers/arm/error_classifier.go @@ -84,6 +84,7 @@ func classifyCloudError(err *genericarmclient.CloudError) core.ErrorClassificati "PrivateIPAddressInReservedRange", "PrivateIPAddressNotInSubnet", "PropertyChangeNotAllowed", + "RegionIsOfferRestricted", "RequestDisallowedByPolicy", // TODO: Technically could probably retry through this? "ReservedResourceName", "SkuNotAvailable", diff --git a/v2/samples/dbforpostgresql/v1api20230601preview/v1api20230601preview_flexibleserver.yaml b/v2/samples/dbforpostgresql/v1api20230601preview/v1api20230601preview_flexibleserver.yaml new file mode 100644 index 00000000000..20416aedd8b --- /dev/null +++ b/v2/samples/dbforpostgresql/v1api20230601preview/v1api20230601preview_flexibleserver.yaml @@ -0,0 +1,19 @@ +apiVersion: dbforpostgresql.azure.com/v1api20230601preview +kind: FlexibleServer +metadata: + name: samplepostgresql + namespace: default +spec: + location: uksouth + owner: + name: aso-sample-rg + version: "13" + sku: + name: Standard_D4s_v3 + tier: GeneralPurpose + administratorLogin: myAdmin + administratorLoginPassword: # This is the name/key of a Kubernetes secret in the same namespace + name: server-admin-pw + key: password + storage: + storageSizeGB: 128 diff --git a/v2/samples/dbforpostgresql/v1api20230601preview/v1api20230601preview_flexibleserversconfiguration.yaml b/v2/samples/dbforpostgresql/v1api20230601preview/v1api20230601preview_flexibleserversconfiguration.yaml new file mode 100644 index 00000000000..076d1191e45 --- /dev/null +++ b/v2/samples/dbforpostgresql/v1api20230601preview/v1api20230601preview_flexibleserversconfiguration.yaml @@ -0,0 +1,11 @@ +apiVersion: dbforpostgresql.azure.com/v1api20230601preview +kind: FlexibleServersConfiguration +metadata: + name: pgaudit + namespace: default +spec: + owner: + name: samplepostgresql + azureName: pgaudit.log + source: user-override + value: READ diff --git a/v2/samples/dbforpostgresql/v1api20230601preview/v1api20230601preview_flexibleserversdatabase.yaml b/v2/samples/dbforpostgresql/v1api20230601preview/v1api20230601preview_flexibleserversdatabase.yaml new file mode 100644 index 00000000000..d21d4107131 --- /dev/null +++ b/v2/samples/dbforpostgresql/v1api20230601preview/v1api20230601preview_flexibleserversdatabase.yaml @@ -0,0 +1,9 @@ +apiVersion: dbforpostgresql.azure.com/v1api20230601preview +kind: FlexibleServersDatabase +metadata: + name: sampledb + namespace: default +spec: + owner: + name: samplepostgresql + charset: utf8 diff --git a/v2/samples/dbforpostgresql/v1api20230601preview/v1api20230601preview_flexibleserversfirewallrule.yaml b/v2/samples/dbforpostgresql/v1api20230601preview/v1api20230601preview_flexibleserversfirewallrule.yaml new file mode 100644 index 00000000000..45b98d0eebc --- /dev/null +++ b/v2/samples/dbforpostgresql/v1api20230601preview/v1api20230601preview_flexibleserversfirewallrule.yaml @@ -0,0 +1,10 @@ +apiVersion: dbforpostgresql.azure.com/v1api20230601preview +kind: FlexibleServersFirewallRule +metadata: + name: samplefirewallrule + namespace: default +spec: + owner: + name: samplepostgresql + startIpAddress: 1.2.3.4 + endIpAddress: 1.2.3.4