From cf0d7b6c031ba844dd5e43cc4e07533b85ef1269 Mon Sep 17 00:00:00 2001 From: Rohit Joy Date: Fri, 30 Mar 2018 20:33:18 -0700 Subject: [PATCH] Georestore command for MySQL and PostgreSQL CLI. (#118) * Add georestore. * Resolving comments. * Resolve comments. * Test update. * Fix CI. * Update index.json. * Fix CI. --- src/index.json | 10 +- src/rdbms/azext_rdbms/_help.py | 159 +- src/rdbms/azext_rdbms/_params.py | 76 +- src/rdbms/azext_rdbms/azext_metadata.json | 3 +- src/rdbms/azext_rdbms/commands.py | 134 +- src/rdbms/azext_rdbms/custom.py | 213 +-- .../azext_rdbms/mysql/models/__init__.py | 68 +- .../azext_rdbms/mysql/models/configuration.py | 8 +- .../mysql/models/configuration_py3.py | 70 + .../azext_rdbms/mysql/models/database.py | 8 +- .../azext_rdbms/mysql/models/database_py3.py | 50 + .../azext_rdbms/mysql/models/firewall_rule.py | 18 +- .../mysql/models/firewall_rule_py3.py | 56 + .../azext_rdbms/mysql/models/log_file.py | 10 +- .../azext_rdbms/mysql/models/log_file_py3.py | 64 + .../models/my_sql_management_client_enums.py | 12 +- .../mysql/models/name_availability.py | 10 +- .../mysql/models/name_availability_py3.py | 36 + .../mysql/models/name_availability_request.py | 12 +- .../models/name_availability_request_py3.py | 38 + .../azext_rdbms/mysql/models/operation.py | 4 +- .../mysql/models/operation_display.py | 4 +- .../mysql/models/operation_display_py3.py | 50 + .../mysql/models/operation_list_result.py | 6 +- .../mysql/models/operation_list_result_py3.py | 28 + .../azext_rdbms/mysql/models/operation_py3.py | 53 + .../models/performance_tier_properties.py | 8 +- .../models/performance_tier_properties_py3.py | 34 + ...rformance_tier_service_level_objectives.py | 20 +- ...mance_tier_service_level_objectives_py3.py | 59 + .../mysql/models/proxy_resource.py | 4 +- .../mysql/models/proxy_resource_py3.py | 45 + src/rdbms/azext_rdbms/mysql/models/server.py | 24 +- .../mysql/models/server_for_create.py | 18 +- .../mysql/models/server_for_create_py3.py | 47 + .../models/server_properties_for_create.py | 18 +- .../server_properties_for_create_py3.py | 56 + .../server_properties_for_default_create.py | 22 +- ...erver_properties_for_default_create_py3.py | 58 + .../server_properties_for_geo_restore.py | 51 + .../server_properties_for_geo_restore_py3.py | 51 + .../models/server_properties_for_restore.py | 20 +- .../server_properties_for_restore_py3.py | 56 + .../azext_rdbms/mysql/models/server_py3.py | 91 ++ .../mysql/models/server_update_parameters.py | 16 +- .../models/server_update_parameters_py3.py | 52 + src/rdbms/azext_rdbms/mysql/models/sku.py | 14 +- src/rdbms/azext_rdbms/mysql/models/sku_py3.py | 51 + .../mysql/models/storage_profile.py | 10 +- .../mysql/models/storage_profile_py3.py | 38 + .../mysql/models/tracked_resource.py | 12 +- .../mysql/models/tracked_resource_py3.py | 53 + .../operations/configurations_operations.py | 50 +- .../mysql/operations/databases_operations.py | 95 +- .../operations/firewall_rules_operations.py | 95 +- .../mysql/operations/servers_operations.py | 141 +- src/rdbms/azext_rdbms/mysql/version.py | 2 +- .../azext_rdbms/postgresql/models/__init__.py | 68 +- .../postgresql/models/configuration.py | 8 +- .../postgresql/models/configuration_py3.py | 70 + .../azext_rdbms/postgresql/models/database.py | 8 +- .../postgresql/models/database_py3.py | 50 + .../postgresql/models/firewall_rule.py | 18 +- .../postgresql/models/firewall_rule_py3.py | 56 + .../azext_rdbms/postgresql/models/log_file.py | 10 +- .../postgresql/models/log_file_py3.py | 64 + .../postgresql/models/name_availability.py | 10 +- .../models/name_availability_py3.py | 36 + .../models/name_availability_request.py | 12 +- .../models/name_availability_request_py3.py | 38 + .../postgresql/models/operation.py | 4 +- .../postgresql/models/operation_display.py | 4 +- .../models/operation_display_py3.py | 50 + .../models/operation_list_result.py | 6 +- .../models/operation_list_result_py3.py | 28 + .../postgresql/models/operation_py3.py | 54 + .../models/performance_tier_properties.py | 8 +- .../models/performance_tier_properties_py3.py | 34 + ...rformance_tier_service_level_objectives.py | 20 +- ...mance_tier_service_level_objectives_py3.py | 59 + .../postgre_sql_management_client_enums.py | 12 +- .../postgresql/models/proxy_resource.py | 4 +- .../postgresql/models/proxy_resource_py3.py | 45 + .../azext_rdbms/postgresql/models/server.py | 24 +- .../postgresql/models/server_for_create.py | 18 +- .../models/server_for_create_py3.py | 48 + .../models/server_properties_for_create.py | 18 +- .../server_properties_for_create_py3.py | 56 + .../server_properties_for_default_create.py | 22 +- ...erver_properties_for_default_create_py3.py | 58 + .../server_properties_for_geo_restore.py | 51 + .../server_properties_for_geo_restore_py3.py | 51 + .../models/server_properties_for_restore.py | 20 +- .../server_properties_for_restore_py3.py | 56 + .../postgresql/models/server_py3.py | 91 ++ .../models/server_update_parameters.py | 16 +- .../models/server_update_parameters_py3.py | 52 + .../azext_rdbms/postgresql/models/sku.py | 14 +- .../azext_rdbms/postgresql/models/sku_py3.py | 51 + .../postgresql/models/storage_profile.py | 10 +- .../postgresql/models/storage_profile_py3.py | 38 + .../postgresql/models/tracked_resource.py | 12 +- .../postgresql/models/tracked_resource_py3.py | 53 + .../operations/configurations_operations.py | 50 +- .../operations/databases_operations.py | 95 +- .../operations/firewall_rules_operations.py | 95 +- .../operations/servers_operations.py | 141 +- src/rdbms/azext_rdbms/postgresql/version.py | 2 +- .../test_mysql_proxy_resources_mgmt.yaml | 1326 --------------- .../recordings/test_mysql_server_mgmt.yaml | 1437 ++--------------- .../test_postgres_proxy_resources_mgmt.yaml | 1258 --------------- .../recordings/test_postgres_server_mgmt.yaml | 1335 ++------------- .../azext_rdbms/tests/test_rdbms_commands.py | 318 +--- src/rdbms/azext_rdbms/validators.py | 6 - src/rdbms/setup.py | 6 +- 115 files changed, 3452 insertions(+), 6663 deletions(-) create mode 100644 src/rdbms/azext_rdbms/mysql/models/configuration_py3.py create mode 100644 src/rdbms/azext_rdbms/mysql/models/database_py3.py create mode 100644 src/rdbms/azext_rdbms/mysql/models/firewall_rule_py3.py create mode 100644 src/rdbms/azext_rdbms/mysql/models/log_file_py3.py create mode 100644 src/rdbms/azext_rdbms/mysql/models/name_availability_py3.py create mode 100644 src/rdbms/azext_rdbms/mysql/models/name_availability_request_py3.py create mode 100644 src/rdbms/azext_rdbms/mysql/models/operation_display_py3.py create mode 100644 src/rdbms/azext_rdbms/mysql/models/operation_list_result_py3.py create mode 100644 src/rdbms/azext_rdbms/mysql/models/operation_py3.py create mode 100644 src/rdbms/azext_rdbms/mysql/models/performance_tier_properties_py3.py create mode 100644 src/rdbms/azext_rdbms/mysql/models/performance_tier_service_level_objectives_py3.py create mode 100644 src/rdbms/azext_rdbms/mysql/models/proxy_resource_py3.py create mode 100644 src/rdbms/azext_rdbms/mysql/models/server_for_create_py3.py create mode 100644 src/rdbms/azext_rdbms/mysql/models/server_properties_for_create_py3.py create mode 100644 src/rdbms/azext_rdbms/mysql/models/server_properties_for_default_create_py3.py create mode 100644 src/rdbms/azext_rdbms/mysql/models/server_properties_for_geo_restore.py create mode 100644 src/rdbms/azext_rdbms/mysql/models/server_properties_for_geo_restore_py3.py create mode 100644 src/rdbms/azext_rdbms/mysql/models/server_properties_for_restore_py3.py create mode 100644 src/rdbms/azext_rdbms/mysql/models/server_py3.py create mode 100644 src/rdbms/azext_rdbms/mysql/models/server_update_parameters_py3.py create mode 100644 src/rdbms/azext_rdbms/mysql/models/sku_py3.py create mode 100644 src/rdbms/azext_rdbms/mysql/models/storage_profile_py3.py create mode 100644 src/rdbms/azext_rdbms/mysql/models/tracked_resource_py3.py create mode 100644 src/rdbms/azext_rdbms/postgresql/models/configuration_py3.py create mode 100644 src/rdbms/azext_rdbms/postgresql/models/database_py3.py create mode 100644 src/rdbms/azext_rdbms/postgresql/models/firewall_rule_py3.py create mode 100644 src/rdbms/azext_rdbms/postgresql/models/log_file_py3.py create mode 100644 src/rdbms/azext_rdbms/postgresql/models/name_availability_py3.py create mode 100644 src/rdbms/azext_rdbms/postgresql/models/name_availability_request_py3.py create mode 100644 src/rdbms/azext_rdbms/postgresql/models/operation_display_py3.py create mode 100644 src/rdbms/azext_rdbms/postgresql/models/operation_list_result_py3.py create mode 100644 src/rdbms/azext_rdbms/postgresql/models/operation_py3.py create mode 100644 src/rdbms/azext_rdbms/postgresql/models/performance_tier_properties_py3.py create mode 100644 src/rdbms/azext_rdbms/postgresql/models/performance_tier_service_level_objectives_py3.py create mode 100644 src/rdbms/azext_rdbms/postgresql/models/proxy_resource_py3.py create mode 100644 src/rdbms/azext_rdbms/postgresql/models/server_for_create_py3.py create mode 100644 src/rdbms/azext_rdbms/postgresql/models/server_properties_for_create_py3.py create mode 100644 src/rdbms/azext_rdbms/postgresql/models/server_properties_for_default_create_py3.py create mode 100644 src/rdbms/azext_rdbms/postgresql/models/server_properties_for_geo_restore.py create mode 100644 src/rdbms/azext_rdbms/postgresql/models/server_properties_for_geo_restore_py3.py create mode 100644 src/rdbms/azext_rdbms/postgresql/models/server_properties_for_restore_py3.py create mode 100644 src/rdbms/azext_rdbms/postgresql/models/server_py3.py create mode 100644 src/rdbms/azext_rdbms/postgresql/models/server_update_parameters_py3.py create mode 100644 src/rdbms/azext_rdbms/postgresql/models/sku_py3.py create mode 100644 src/rdbms/azext_rdbms/postgresql/models/storage_profile_py3.py create mode 100644 src/rdbms/azext_rdbms/postgresql/models/tracked_resource_py3.py delete mode 100644 src/rdbms/azext_rdbms/tests/recordings/test_mysql_proxy_resources_mgmt.yaml delete mode 100644 src/rdbms/azext_rdbms/tests/recordings/test_postgres_proxy_resources_mgmt.yaml diff --git a/src/index.json b/src/index.json index adeae4f5a26..70354ff570f 100644 --- a/src/index.json +++ b/src/index.json @@ -415,9 +415,9 @@ ], "rdbms": [ { - "filename": "rdbms-0.0.4-py2.py3-none-any.whl", - "sha256Digest": "6e0f6d39c98c3a39c9664ed54576b2e0f1cd23b412b137f19815a276e7510350", - "downloadUrl": "https://prodrdbmsclipackages.blob.core.windows.net/cliextensions/rdbms-0.0.4-py2.py3-none-any.whl", + "filename": "rdbms-0.0.5-py2.py3-none-any.whl", + "sha256Digest": "2b587493a8e10738bb6f3f82cf9e26ebf32a509c162f7093b4cb8e99aff5072f", + "downloadUrl": "https://prodrdbmsclipackages.blob.core.windows.net/cliextensions/rdbms-0.0.5-py2.py3-none-any.whl", "metadata": { "classifiers": [ "Development Status :: 4 - Beta", @@ -453,8 +453,8 @@ "license": "MIT", "metadata_version": "2.0", "name": "rdbms", - "summary": "An Azure CLI Extension to manage Azure MySQL and Azure PostgreSQL resources", - "version": "0.0.4" + "summary": "An Azure CLI Extension providing support for Azure MySQL and Azure PostgreSQL.", + "version": "0.0.5" } } ], diff --git a/src/rdbms/azext_rdbms/_help.py b/src/rdbms/azext_rdbms/_help.py index 9d3e5017326..0bbae886527 100644 --- a/src/rdbms/azext_rdbms/_help.py +++ b/src/rdbms/azext_rdbms/_help.py @@ -9,16 +9,7 @@ def add_helps(command_group, server_type): - helps['{}'.format(command_group)] = """ - type: group - short-summary: Manage Azure Database for {} servers. - """.format(server_type) - helps['{} server'.format(command_group)] = """ - type: group - short-summary: Manage {} servers. - """.format(server_type) helps['{} server create'.format(command_group)] = """ - type: command short-summary: Create a server. examples: - name: Create a {0} server with only required paramaters in North Europe. @@ -31,153 +22,17 @@ def add_helps(command_group, server_type): --sku-name B_Gen4_2 --ssl-enforcement Disabled \\ --storage-size 51200 --tags "key=value" --version {{server-version}} """.format(server_type, command_group) - helps['{} server restore'.format(command_group)] = """ + helps['{} server georestore'.format(command_group)] = """ type: command - short-summary: Restore a server from backup. + short-summary: Georestore a server from backup. examples: - - name: Restore 'testsvr' as 'testsvrnew'. - text: az {0} server restore -g testgroup -n testsvrnew --source-server testsvr --restore-point-in-time "2017-06-15T13:10:00Z" - - name: Restore 'testsvr2' to 'testsvrnew', where 'testsvrnew' is in a different resource group than the backup. + - name: Georestore 'testsvr' as 'testsvrnew' where 'testsvrnew' is in same resource group as 'testsvr'. + text: az {0} server georestore -g testgroup -n testsvrnew --source-server testsvr -l westus2 + - name: Georestore 'testsvr2' to 'testsvrnew', where 'testsvrnew' is in the different resource group as the original server. text: | - az {0} server restore -g testgroup -n testsvrnew \\ - -s "/subscriptions/${{SubID}}/resourceGroups/${{ResourceGroup}}/providers/Microsoft.DBfor{1}/servers/testsvr2" \\ - --restore-point-in-time "2017-06-15T13:10:00Z" + az {0} server georestore -g testgroup -n testsvrnew \\ + -s "/subscriptions/${{SubID}}/resourceGroups/${{ResourceGroup}}/providers/Microsoft.DBfor{1}/servers/testsvr2" -l westus2 --sku-name GP_Gen5_2 """.format(command_group, server_type) - helps['{} server update'.format(command_group)] = """ - type: command - short-summary: Update a server. - examples: - - name: Update a server's vcore to 2. - text: az {0} server update -g testgroup -n testsvrnew --vcore 2 - - name: Update a server's tags. - text: az {0} server update -g testgroup -n testsvrnew --tags "k1=v1" "k2=v2" - """.format(command_group) - helps['{} server delete'.format(command_group)] = """ - type: command - short-summary: Delete a server. - """ - helps['{} server show'.format(command_group)] = """ - type: command - short-summary: Get the details of a server. - """ - helps['{} server list'.format(command_group)] = """ - type: command - short-summary: List available servers. - examples: - - name: List all {0} servers in a subscription. - text: az {1} server list - - name: List all {0} servers in a resource group. - text: az {1} server list -g testgroup - """.format(server_type, command_group) - helps['{} server firewall-rule'.format(command_group)] = """ - type: group - short-summary: Manage firewall rules for a server. - """ - helps['{} server firewall-rule create'.format(command_group)] = """ - type: command - short-summary: Create a new firewall rule for a server. - examples: - - name: Create a firewall rule allowing all connections from all IP addresses. - text: az {} server firewall-rule create -g testgroup -s testsvr -n allowall --start-ip-address 0.0.0.0 --end-ip-address 255.255.255.255 - """.format(command_group) - helps['{} server firewall-rule update'.format(command_group)] = """ - type: command - short-summary: Update a firewall rule. - examples: - - name: Update a firewall rule's start IP address. - text: az {0} server firewall-rule update -g testgroup -s testsvr -n allowall --start-ip-address 0.0.0.1 - - name: Update a firewall rule's start and end IP address. - text: az {0} server firewall-rule update -g testgroup -s testsvr -n allowall --start-ip-address 0.0.0.1 --end-ip-address 255.255.255.254 - """.format(command_group) - helps['{} server firewall-rule delete'.format(command_group)] = """ - type: command - short-summary: Delete a firewall rule. - """ - helps['{} server firewall-rule show'.format(command_group)] = """ - type: command - short-summary: Get the details of a firewall rule. - """ - helps['{} server firewall-rule list'.format(command_group)] = """ - type: command - short-summary: List all firewall rules for a server. - """ - helps['{} server configuration'.format(command_group)] = """ - type: group - short-summary: Manage configuration values for a server. - """ - helps['{} server configuration set'.format(command_group)] = """ - type: command - short-summary: Update the configuration of a server. - examples: - - name: Set a new configuration value. - text: az {0} server configuration set -g testgroup -s testsvr -n {{config_name}} --value {{config_value}} - - name: Set a configuration value to its default. - text: az {0} server configuration set -g testgroup -s testsvr -n {{config_name}} - """.format(command_group) - helps['{} server configuration show'.format(command_group)] = """ - type: command - short-summary: Get the configuration for a server." - """ - helps['{} server configuration list'.format(command_group)] = """ - type: command - short-summary: List the configuration values for a server. - """ - helps['{} server-logs'.format(command_group)] = """ - type: group - short-summary: Manage server logs. - """ - helps['{} server-logs list'.format(command_group)] = """ - type: command - short-summary: List log files for a server. - examples: - - name: List log files for 'testsvr' modified in the last 72 hours (default value). - text: az {0} server-logs list -g testgroup -s testsvr - - name: List log files for 'testsvr' modified in the last 10 hours. - text: az {0} server-logs list -g testgroup -s testsvr --file-last-written 10 - - name: List log files for 'testsvr' less than 30Kb in size. - text: az {0} server-logs list -g testgroup -s testsvr --max-file-size 30 - """.format(command_group) - helps['{} server-logs download'.format(command_group)] = """ - type: command - short-summary: Download log files. - examples: - - name: Download log files f1 and f2 to the current directory from the server 'testsvr'. - text: az {} server-logs download -g testgroup -s testsvr -n f1.log f2.log - """.format(command_group) - helps['{} db'.format(command_group)] = """ - type: group - short-summary: Manage {0} databases on a server. - """.format(server_type) - helps['{} db create'.format(command_group)] = """ - type: command - short-summary: Create a {0} database. - examples: - - name: Create database 'testdb' in the server 'testsvr' with the default parameters. - text: az {1} db create -g testgroup -s testsvr -n testdb - - name: Create database 'testdb' in server 'testsvr' with a given character set and collation rules. - text: az {1} db create -g testgroup -s testsvr -n testdb --charset {{valid_charset}} --collation {{valid_collation}} - """.format(server_type, command_group) - helps['{} db delete'.format(command_group)] = """ - type: command - short-summary: Delete a database. - examples: - - name: Delete database 'testdb' in the server 'testsvr'. - text: az {0} db delete -g testgroup -s testsvr -n testdb - """.format(command_group) - helps['{} db show'.format(command_group)] = """ - type: command - short-summary: Show the details of a database. - examples: - - name: Show database 'testdb' in the server 'testsvr'. - text: az {0} db show -g testgroup -s testsvr -n testdb - """.format(command_group) - helps['{} db list'.format(command_group)] = """ - type: command - short-summary: List the databases for a server. - examples: - - name: List databases in the server 'testsvr'. - text: az {0} db list -g testgroup -s testsvr - """.format(command_group) add_helps("mysql", "MySQL") diff --git a/src/rdbms/azext_rdbms/_params.py b/src/rdbms/azext_rdbms/_params.py index 79ea5ae88bb..ca21bbbd28f 100644 --- a/src/rdbms/azext_rdbms/_params.py +++ b/src/rdbms/azext_rdbms/_params.py @@ -6,8 +6,6 @@ # pylint: disable=line-too-long from azure.cli.core.commands.parameters import get_resource_name_completion_list, tags_type, get_location_type, get_enum_type # pylint: disable=line-too-long -from azext_rdbms import mysql, postgresql -from azext_rdbms.validators import configuration_value_validator def load_arguments(self, _): # pylint: disable=too-many-statements @@ -17,39 +15,32 @@ def load_arguments(self, _): # pylint: disable=too-many-statements 'postgres': get_resource_name_completion_list('Microsoft.DBForPostgreSQL/servers') } - def _complex_params(command_group, engine): + def _complex_params(command_group): with self.argument_context('{} server create'.format(command_group)) as c: - c.expand('sku', engine.models.Sku) - c.ignore('size', 'family', 'capacity', 'tier') - c.expand('storage_profile', engine.models.storage_profile.StorageProfile) - c.expand('properties', engine.models.ServerPropertiesForDefaultCreate) + c.argument('sku_name', options_list=['--sku-name'], required=True, help='The name of the sku, typically, tier + family + cores, e.g. B_Gen4_1, GP_Gen5_8.') + + c.argument('backup_retention', type=int, options_list=['--backup-retention'], help='The number of days a backup is retained.') + c.argument('geo_redundant_backup', options_list=['--geo-redundant-backup'], help='Enable Geo-redundant or not for server backup.') + c.argument('storage_size', options_list=['--storage-size'], type=int, help='The max storage size of the server. Unit is megabytes.') + c.argument('administrator_login', required=True, arg_group='Authentication') c.argument('administrator_login_password', arg_group='Authentication') - c.expand('parameters', engine.models.ServerForCreate) c.argument('location', arg_type=get_location_type(self.cli_ctx), required=False) + c.argument('version', help='Server version') - with self.argument_context('{} server restore'. format(command_group)) as c: - c.ignore('sku', 'storage_profile') - - c.expand('properties', engine.models.ServerPropertiesForRestore) - c.ignore('version', 'ssl_enforcement', 'storage_mb') - - c.expand('parameters', engine.models.ServerForCreate) - c.ignore('tags', 'location') - - c.argument('source_server_id', options_list=['--source-server', '-s'], help='The name or ID of the source server to restore from.') - c.argument('restore_point_in_time', help='The point in time to restore from (ISO8601 format), e.g., 2017-04-26T02:10:00+08:00') - - with self.argument_context('{} server configuration set'.format(command_group)) as c: - c.argument('value', help='Value of the configuration. If not provided, configuration value will be set to default.', validator=configuration_value_validator) - c.ignore('source') + with self.argument_context('{} server georestore'. format(command_group)) as c: + c.argument('location', arg_type=get_location_type(self.cli_ctx), required=True) + c.argument('sku_name', options_list=['--sku-name'], required=False, help='The name of the sku, typically, tier + family + cores, e.g. B_Gen4_1, GP_Gen5_8.') + c.argument('source_server', options_list=['--source-server', '-s'], required=True, help='The name or ID of the source server to restore from.') + c.argument('backup_retention', options_list=['--backup-retention'], type=int, help='The max days of retention, unit is days.') + c.argument('geo_redundant_backup', options_list=['--geo-redundant-backup'], help='Enable Geo-redundant or not for server backup.') with self.argument_context('{} server wait'.format(command_group)) as c: c.ignore('created', 'deleted', 'updated') - _complex_params('mysql', mysql) - _complex_params('postgres', postgresql) + _complex_params('mysql') + _complex_params('postgres') for scope in ['mysql', 'postgres']: with self.argument_context(scope) as c: @@ -62,34 +53,11 @@ def _complex_params(command_group, engine): c.argument('server_name', options_list=['--name', '-n'], id_part='name', help='Name of the server.') c.argument('administrator_login', options_list=['--admin-user', '-u']) - c.argument('administrator_login_password', options_list=['--admin-password', '-p'], required=False, help='The password of the administrator login.') + c.argument('administrator_login_password', options_list=['--admin-password', '-p'], help='The password of the administrator login.') c.argument('ssl_enforcement', arg_type=get_enum_type(['Enabled', 'Disabled']), options_list=['--ssl-enforcement'], help='Enable ssl enforcement or not when connect to server.') - c.argument('tier', arg_type=get_enum_type(['Basic', 'GeneralPurpose', 'MemoryOptimized']), required=False, options_list=['--performance-tier'], help='The performance tier of the server.') - c.argument('capacity', options_list=['--vcore'], type=int, required=False, help='Number of vcore.') - c.argument('family', options_list=['--family'], arg_type=get_enum_type(['Gen4', 'Gen5']), required=False, help='Hardware generation.') - c.argument('storage_mb', options_list=['--storage-size'], type=int, help='The max storage size of the server, unit is MB.') - c.argument('backup_retention_days', options_list=['--backup-retention'], type=int, help='The max days of retention, unit is days.') + c.argument('tier', arg_type=get_enum_type(['Basic', 'GeneralPurpose', 'MemoryOptimized']), options_list=['--performance-tier'], help='The performance tier of the server.') + c.argument('capacity', options_list=['--vcore'], type=int, help='Number of vcore.') + c.argument('family', options_list=['--family'], arg_type=get_enum_type(['Gen4', 'Gen5']), help='Hardware generation.') + c.argument('storage_mb', options_list=['--storage-size'], type=int, help='The max storage size of the server. Unit is megabytes.') + c.argument('backup_retention_days', options_list=['--backup-retention'], type=int, help='The number of days a backup is retained.') c.argument('tags', tags_type) - - for scope in ['mysql server-logs', 'postgres server-logs']: - with self.argument_context(scope) as c: - c.argument('file_name', options_list=['--name', '-n'], nargs='+', help='Space separated list of log filenames on the server to download.') - c.argument('max_file_size', type=int, help='The file size limitation to filter files.') - c.argument('file_last_written', type=int, help='Integer in hours to indicate file last modify time, default value is 72.') - c.argument('filename_contains', help='The pattern that file name should match.') - - for scope in ['mysql db', 'postgres db']: - with self.argument_context(scope) as c: - c.argument('database_name', options_list=['--name', '-n']) - - for scope in ['mysql server firewall-rule', 'postgres server firewall-rule']: - with self.argument_context(scope) as c: - c.argument('server_name', options_list=['--server-name', '-s']) - c.argument('firewall_rule_name', options_list=['--name', '-n'], id_part='child_name_1', help='The name of the firewall rule.') - c.argument('start_ip_address', options_list=['--start-ip-address'], help='The start IP address of the firewall rule. Must be IPv4 format. Use value \'0.0.0.0\' to represent all Azure-internal IP addresses.') - c.argument('end_ip_address', options_list=['--end-ip-address'], help='The end IP address of the firewall rule. Must be IPv4 format. Use value \'0.0.0.0\' to represent all Azure-internal IP addresses.') - - for scope in ['mysql server configuration', 'postgres server configuration']: - with self.argument_context(scope) as c: - c.argument('server_name', options_list=['--server-name', '-s']) - c.argument('configuration_name', id_part='child_name_1', options_list=['--name', '-n']) diff --git a/src/rdbms/azext_rdbms/azext_metadata.json b/src/rdbms/azext_rdbms/azext_metadata.json index 7f7f4a76ebd..0805b25d581 100644 --- a/src/rdbms/azext_rdbms/azext_metadata.json +++ b/src/rdbms/azext_rdbms/azext_metadata.json @@ -1,3 +1,4 @@ { - "azext.minCliCoreVersion": "2.0.24" + "azext.minCliCoreVersion": "2.0.24", + "azext.isPreview": true } \ No newline at end of file diff --git a/src/rdbms/azext_rdbms/commands.py b/src/rdbms/azext_rdbms/commands.py index 1cc934e75d1..a887e9c634c 100644 --- a/src/rdbms/azext_rdbms/commands.py +++ b/src/rdbms/azext_rdbms/commands.py @@ -7,22 +7,12 @@ from azext_rdbms._client_factory import ( cf_mysql_servers, - cf_mysql_db, - cf_mysql_firewall_rules, - cf_mysql_config, - cf_mysql_log, - cf_postgres_servers, - cf_postgres_db, - cf_postgres_firewall_rules, - cf_postgres_config, - cf_postgres_log) + cf_postgres_servers) # pylint: disable=too-many-locals, too-many-statements, line-too-long def load_command_table(self, _): - rdbms_custom = CliCommandType(operations_tmpl='azext_rdbms.custom#{}') - mysql_servers_sdk = CliCommandType( operations_tmpl='azext_rdbms.mysql.operations.servers_operations#ServersOperations.{}', client_arg_name='self', @@ -35,124 +25,10 @@ def load_command_table(self, _): client_factory=cf_postgres_servers ) - mysql_firewall_rule_sdk = CliCommandType( - operations_tmpl='azext_rdbms.mysql.operations.firewall_rules_operations#FirewallRulesOperations.{}', - client_arg_name='self', - client_factory=cf_mysql_firewall_rules - ) - - postgres_firewall_rule_sdk = CliCommandType( - operations_tmpl='azext_rdbms.postgresql.operations.firewall_rules_operations#FirewallRulesOperations.{}', - client_arg_name='self', - client_factory=cf_postgres_firewall_rules - ) - - mysql_config_sdk = CliCommandType( - operations_tmpl='azext_rdbms.mysql.operations.configurations_operations#ConfigurationsOperations.{}', - client_arg_name='self', - client_factory=cf_mysql_config - ) - - postgres_config_sdk = CliCommandType( - operations_tmpl='azext_rdbms.postgresql.operations.configurations_operations#ConfigurationsOperations.{}', - client_arg_name='self', - client_factory=cf_postgres_config - ) - - mysql_log_sdk = CliCommandType( - operations_tmpl='azext_rdbms.mysql.operations.log_files_operations#LogFilesOperations.{}', - client_arg_name='self', - client_factory=cf_mysql_log - ) - - postgres_log_sdk = CliCommandType( - operations_tmpl='azext_rdbms.postgresql.operations.log_files_operations#LogFilesOperations.{}', - client_arg_name='self', - client_factory=cf_postgres_log - ) - - mysql_db_sdk = CliCommandType( - operations_tmpl='azext_rdbms.mysql.operations.databases_operations#DatabasesOperations.{}', - client_arg_name='self', - client_factory=cf_mysql_db - ) - - postgres_db_sdk = CliCommandType( - operations_tmpl='azext_rdbms.postgresql.operations.databases_operations#DatabasesOperations.{}', - client_arg_name='self', - client_factory=cf_postgres_db - ) - with self.command_group('mysql server', mysql_servers_sdk, client_factory=cf_mysql_servers) as g: - g.command('create', 'create') - g.custom_command('restore', '_server_restore', no_wait_param='no_wait') - g.command('delete', 'delete', confirmation=True) - g.command('show', 'get') - g.custom_command('list', '_server_list_custom_func') - g.generic_update_command('update', - getter_name='_server_update_get', getter_type=rdbms_custom, - setter_name='_server_update_set', setter_type=rdbms_custom, setter_arg_name='parameters', - custom_func_name='_server_update_custom_func') - g.generic_wait_command('wait', getter_name='_server_mysql_get', getter_type=rdbms_custom) + g.custom_command('create', '_server_create') + g.custom_command('georestore', '_server_georestore', supports_no_wait=True) with self.command_group('postgres server', postgres_servers_sdk, client_factory=cf_postgres_servers) as g: - g.command('create', 'create') - g.custom_command('restore', '_server_restore', no_wait_param='no_wait') - g.command('delete', 'delete', confirmation=True) - g.command('show', 'get') - g.custom_command('list', '_server_list_custom_func') - g.generic_update_command('update', - getter_name='_server_update_get', getter_type=rdbms_custom, - setter_name='_server_update_set', setter_type=rdbms_custom, setter_arg_name='parameters', - custom_func_name='_server_update_custom_func') - g.generic_wait_command('wait', getter_name='_server_postgresql_get', getter_type=rdbms_custom) - - with self.command_group('mysql server firewall-rule', mysql_firewall_rule_sdk) as g: - g.command('create', 'create_or_update') - g.command('delete', 'delete', confirmation=True) - g.command('show', 'get') - g.command('list', 'list_by_server') - g.generic_update_command('update', - getter_name='_firewall_rule_custom_getter', getter_type=rdbms_custom, - setter_name='_firewall_rule_custom_setter', setter_type=rdbms_custom, setter_arg_name='parameters', - custom_func_name='_firewall_rule_update_custom_func') - - with self.command_group('postgres server firewall-rule', postgres_firewall_rule_sdk) as g: - g.command('create', 'create_or_update') - g.command('delete', 'delete', confirmation=True) - g.command('show', 'get') - g.command('list', 'list_by_server') - g.generic_update_command('update', - getter_name='_firewall_rule_custom_getter', getter_type=rdbms_custom, - setter_name='_firewall_rule_custom_setter', setter_type=rdbms_custom, setter_arg_name='parameters', - custom_func_name='_firewall_rule_update_custom_func') - - with self.command_group('mysql server configuration', mysql_config_sdk) as g: - g.command('set', 'create_or_update') - g.command('show', 'get') - g.command('list', 'list_by_server') - - with self.command_group('postgres server configuration', postgres_config_sdk) as g: - g.command('set', 'create_or_update') - g.command('show', 'get') - g.command('list', 'list_by_server') - - with self.command_group('mysql server-logs', mysql_log_sdk, client_factory=cf_mysql_log) as g: - g.custom_command('list', '_list_log_files_with_filter') - g.custom_command('download', '_download_log_files') - - with self.command_group('postgres server-logs', postgres_log_sdk, client_factory=cf_postgres_log) as g: - g.custom_command('list', '_list_log_files_with_filter') - g.custom_command('download', '_download_log_files') - - with self.command_group('mysql db', mysql_db_sdk) as g: - g.command('create', 'create_or_update') - g.command('delete', 'delete', confirmation=True) - g.command('show', 'get') - g.command('list', 'list_by_server') - - with self.command_group('postgres db', postgres_db_sdk) as g: - g.command('create', 'create_or_update') - g.command('delete', 'delete', confirmation=True) - g.command('show', 'get') - g.command('list', 'list_by_server') + g.custom_command('create', '_server_create') + g.custom_command('georestore', '_server_georestore', supports_no_wait=True) diff --git a/src/rdbms/azext_rdbms/custom.py b/src/rdbms/azext_rdbms/custom.py index d466ddece4c..b2bcc1c3979 100644 --- a/src/rdbms/azext_rdbms/custom.py +++ b/src/rdbms/azext_rdbms/custom.py @@ -6,22 +6,83 @@ # pylint: disable=unused-argument from azure.cli.core.commands.client_factory import get_subscription_id +from azure.cli.core.util import sdk_no_wait from msrestazure.tools import resource_id, is_valid_resource_id, parse_resource_id # pylint: disable=import-error from azext_rdbms.mysql.operations.servers_operations import ServersOperations -from ._client_factory import get_mysql_management_client, get_postgresql_management_client + SKU_TIER_MAP = {'Basic': 'b', 'GeneralPurpose': 'gp', 'MemoryOptimized': 'mo'} -# Need to replace source server name with source server id, so customer server restore function +def _server_create(cmd, client, resource_group_name, server_name, sku_name, + location=None, administrator_login=None, administrator_login_password=None, backup_retention=None, + geo_redundant_backup=None, ssl_enforcement=None, storage_size=None, tags=None, version=None): + provider = 'Microsoft.DBForMySQL' if isinstance(client, ServersOperations) else 'Microsoft.DBforPostgreSQL' + parameters = None + if provider == 'Microsoft.DBForMySQL': + from azure.mgmt.rdbms import mysql + parameters = mysql.models.ServerForCreate( + sku=mysql.models.Sku(name=sku_name), + properties=mysql.models.ServerPropertiesForDefaultCreate( + administrator_login=administrator_login, + administrator_login_password=administrator_login_password, + version=version, + ssl_enforcement=ssl_enforcement, + storage_profile=mysql.models.StorageProfile( + backup_retention_days=backup_retention, + geo_redundant_backup=geo_redundant_backup, + storage_mb=storage_size)), + location=location, + tags=tags) + elif provider == 'Microsoft.DBforPostgreSQL': + from azure.mgmt.rdbms import postgresql + parameters = postgresql.models.ServerForCreate( + sku=postgresql.models.Sku(name=sku_name), + properties=postgresql.models.ServerPropertiesForDefaultCreate( + administrator_login=administrator_login, + administrator_login_password=administrator_login_password, + version=version, + ssl_enforcement=ssl_enforcement, + storage_profile=postgresql.models.StorageProfile( + backup_retention_days=backup_retention, + geo_redundant_backup=geo_redundant_backup, + storage_mb=storage_size)), + location=location, + tags=tags) + + return client.create(resource_group_name, server_name, parameters) + + +# need to replace source server name with source server id, so customer server georestore function # The parameter list should be the same as that in factory to use the ParametersContext -# arguments and validators -def _server_restore(cmd, client, resource_group_name, server_name, parameters, no_wait=False, **kwargs): - source_server = kwargs['source_server_id'] +# auguments and validators +def _server_georestore(cmd, client, resource_group_name, server_name, sku_name, location, source_server, + backup_retention=None, geo_redundant_backup=None, no_wait=False, **kwargs): + provider = 'Microsoft.DBForMySQL' if isinstance(client, ServersOperations) else 'Microsoft.DBforPostgreSQL' + parameters = None + if provider == 'Microsoft.DBForMySQL': + from azext_rdbms import mysql + parameters = mysql.models.ServerForCreate( + sku=mysql.models.Sku(name=sku_name), + properties=mysql.models.ServerPropertiesForGeoRestore( + storage_profile=mysql.models.StorageProfile( + backup_retention_days=backup_retention, + geo_redundant_backup=geo_redundant_backup + )), + location=location) + elif provider == 'Microsoft.DBforPostgreSQL': + from azext_rdbms import postgresql + parameters = postgresql.models.ServerForCreate( + sku=postgresql.models.Sku(name=sku_name), + properties=postgresql.models.ServerPropertiesForGeoRestore( + storage_profile=postgresql.models.StorageProfile( + backup_retention_days=backup_retention, + geo_redundant_backup=geo_redundant_backup + )), + location=location) if not is_valid_resource_id(source_server): if len(source_server.split('/')) == 1: - provider = 'Microsoft.DBForMySQL' if isinstance(client, ServersOperations) else 'Microsoft.DBforPostgreSQL' source_server = resource_id(subscription=get_subscription_id(cmd.cli_ctx), resource_group=resource_group_name, namespace=provider, @@ -32,142 +93,12 @@ def _server_restore(cmd, client, resource_group_name, server_name, parameters, n parameters.properties.source_server_id = source_server - # Here is a workaround that we don't support cross-region restore currently, - # so the location must be set as the same as source server (not the resource group) - id_parts = parse_resource_id(source_server) + source_server_id_parts = parse_resource_id(source_server) try: - source_server_object = client.get(id_parts['resource_group'], id_parts['name']) - parameters.location = source_server_object.location + source_server_object = client.get(source_server_id_parts['resource_group'], source_server_id_parts['name']) + if parameters.sku.name is None: + parameters.sku.name = source_server_object.sku.name except Exception as e: raise ValueError('Unable to get source server: {}.'.format(str(e))) - return client.create(resource_group_name, server_name, parameters, raw=no_wait) - - -def _server_update_custom_func(instance, - capacity=None, - storage_mb=None, - backup_retention_days=None, - administrator_login_password=None, - ssl_enforcement=None, - tags=None): - from azext_rdbms.mysql.models import StorageProfile # pylint: disable=unused-variable - from importlib import import_module - server_module_path = instance.__module__ - module = import_module(server_module_path.replace('server', 'server_update_parameters')) - ServerUpdateParameters = getattr(module, 'ServerUpdateParameters') - - if capacity is not None: - instance.sku.name = _get_sku_name(instance.sku.tier, instance.sku.family, capacity) - instance.sku.capacity = capacity - else: - instance.sku = None - - if storage_mb is not None: - instance.storage_profile.storage_mb = storage_mb - - if backup_retention_days is not None: - instance.storage_profile.backup_retention_days = backup_retention_days - - params = ServerUpdateParameters(sku=instance.sku, - storage_profile=instance.storage_profile, - administrator_login_password=administrator_login_password, - version=None, - ssl_enforcement=ssl_enforcement, - tags=tags) - - return params - - -def _server_mysql_get(cmd, resource_group_name, server_name): - client = get_mysql_management_client(cmd.cli_ctx) - return client.servers.get(resource_group_name, server_name) - - -def _server_postgresql_get(cmd, resource_group_name, server_name): - client = get_postgresql_management_client(cmd.cli_ctx) - return client.servers.get(resource_group_name, server_name) - - -def _server_update_get(client, resource_group_name, server_name): - return client.get(resource_group_name, server_name) - - -def _server_update_set(client, resource_group_name, server_name, parameters): - return client.update(resource_group_name, server_name, parameters) - - -def _get_sku_name(tier, family, capacity): - return '{}_{}_{}'.format(SKU_TIER_MAP[tier], family, str(capacity)) - - -def _firewall_rule_custom_getter(client, resource_group_name, server_name, firewall_rule_name): - return client.get(resource_group_name, server_name, firewall_rule_name) - - -def _firewall_rule_custom_setter(client, resource_group_name, server_name, firewall_rule_name, parameters): - return client.create_or_update( - resource_group_name, - server_name, - firewall_rule_name, - parameters.start_ip_address, - parameters.end_ip_address) - - -def _firewall_rule_update_custom_func(instance, start_ip_address=None, end_ip_address=None): - if start_ip_address is not None: - instance.start_ip_address = start_ip_address - if end_ip_address is not None: - instance.end_ip_address = end_ip_address - return instance - - -# Custom functions for server logs -def _download_log_files( - client, - resource_group_name, - server_name, - file_name): - from six.moves.urllib.request import urlretrieve # pylint: disable=import-error - - # list all files - files = client.list_by_server(resource_group_name, server_name) - - for f in files: - if f.name in file_name: - urlretrieve(f.url, f.name) - - -def _list_log_files_with_filter(client, resource_group_name, server_name, filename_contains=None, - file_last_written=None, max_file_size=None): - import re - from datetime import datetime, timedelta - from dateutil.tz import tzutc # pylint: disable=import-error - - # list all files - all_files = client.list_by_server(resource_group_name, server_name) - files = [] - - if file_last_written is None: - file_last_written = 72 - time_line = datetime.utcnow().replace(tzinfo=tzutc()) - timedelta(hours=file_last_written) - - for f in all_files: - if f.last_modified_time < time_line: - continue - if filename_contains is not None and re.search(filename_contains, f.name) is None: - continue - if max_file_size is not None and f.size_in_kb > max_file_size: - continue - - del f.created_time - files.append(f) - - return files - - -# Custom functions for list servers -def _server_list_custom_func(client, resource_group_name=None): - if resource_group_name: - return client.list_by_resource_group(resource_group_name) - return client.list() + return sdk_no_wait(no_wait, client.create, resource_group_name, server_name, parameters) diff --git a/src/rdbms/azext_rdbms/mysql/models/__init__.py b/src/rdbms/azext_rdbms/mysql/models/__init__.py index c94ded454c5..e630a179e94 100644 --- a/src/rdbms/azext_rdbms/mysql/models/__init__.py +++ b/src/rdbms/azext_rdbms/mysql/models/__init__.py @@ -9,27 +9,52 @@ # regenerated. # -------------------------------------------------------------------------- -from .proxy_resource import ProxyResource -from .tracked_resource import TrackedResource -from .storage_profile import StorageProfile -from .server_properties_for_create import ServerPropertiesForCreate -from .server_properties_for_default_create import ServerPropertiesForDefaultCreate -from .server_properties_for_restore import ServerPropertiesForRestore -from .sku import Sku -from .server import Server -from .server_for_create import ServerForCreate -from .server_update_parameters import ServerUpdateParameters -from .firewall_rule import FirewallRule -from .database import Database -from .configuration import Configuration -from .operation_display import OperationDisplay -from .operation import Operation -from .operation_list_result import OperationListResult -from .log_file import LogFile -from .performance_tier_service_level_objectives import PerformanceTierServiceLevelObjectives -from .performance_tier_properties import PerformanceTierProperties -from .name_availability_request import NameAvailabilityRequest -from .name_availability import NameAvailability +try: + from .proxy_resource_py3 import ProxyResource + from .tracked_resource_py3 import TrackedResource + from .storage_profile_py3 import StorageProfile + from .server_properties_for_create_py3 import ServerPropertiesForCreate + from .server_properties_for_default_create_py3 import ServerPropertiesForDefaultCreate + from .server_properties_for_restore_py3 import ServerPropertiesForRestore + from .server_properties_for_geo_restore_py3 import ServerPropertiesForGeoRestore + from .sku_py3 import Sku + from .server_py3 import Server + from .server_for_create_py3 import ServerForCreate + from .server_update_parameters_py3 import ServerUpdateParameters + from .firewall_rule_py3 import FirewallRule + from .database_py3 import Database + from .configuration_py3 import Configuration + from .operation_display_py3 import OperationDisplay + from .operation_py3 import Operation + from .operation_list_result_py3 import OperationListResult + from .log_file_py3 import LogFile + from .performance_tier_service_level_objectives_py3 import PerformanceTierServiceLevelObjectives + from .performance_tier_properties_py3 import PerformanceTierProperties + from .name_availability_request_py3 import NameAvailabilityRequest + from .name_availability_py3 import NameAvailability +except (SyntaxError, ImportError): + from .proxy_resource import ProxyResource + from .tracked_resource import TrackedResource + from .storage_profile import StorageProfile + from .server_properties_for_create import ServerPropertiesForCreate + from .server_properties_for_default_create import ServerPropertiesForDefaultCreate + from .server_properties_for_restore import ServerPropertiesForRestore + from .server_properties_for_geo_restore import ServerPropertiesForGeoRestore + from .sku import Sku + from .server import Server + from .server_for_create import ServerForCreate + from .server_update_parameters import ServerUpdateParameters + from .firewall_rule import FirewallRule + from .database import Database + from .configuration import Configuration + from .operation_display import OperationDisplay + from .operation import Operation + from .operation_list_result import OperationListResult + from .log_file import LogFile + from .performance_tier_service_level_objectives import PerformanceTierServiceLevelObjectives + from .performance_tier_properties import PerformanceTierProperties + from .name_availability_request import NameAvailabilityRequest + from .name_availability import NameAvailability from .server_paged import ServerPaged from .firewall_rule_paged import FirewallRulePaged from .database_paged import DatabasePaged @@ -52,6 +77,7 @@ 'ServerPropertiesForCreate', 'ServerPropertiesForDefaultCreate', 'ServerPropertiesForRestore', + 'ServerPropertiesForGeoRestore', 'Sku', 'Server', 'ServerForCreate', diff --git a/src/rdbms/azext_rdbms/mysql/models/configuration.py b/src/rdbms/azext_rdbms/mysql/models/configuration.py index 958b4df2237..8d95fc4a0f2 100644 --- a/src/rdbms/azext_rdbms/mysql/models/configuration.py +++ b/src/rdbms/azext_rdbms/mysql/models/configuration.py @@ -60,11 +60,11 @@ class Configuration(ProxyResource): 'source': {'key': 'properties.source', 'type': 'str'}, } - def __init__(self, value=None, source=None): - super(Configuration, self).__init__() - self.value = value + def __init__(self, **kwargs): + super(Configuration, self).__init__(**kwargs) + self.value = kwargs.get('value', None) self.description = None self.default_value = None self.data_type = None self.allowed_values = None - self.source = source + self.source = kwargs.get('source', None) diff --git a/src/rdbms/azext_rdbms/mysql/models/configuration_py3.py b/src/rdbms/azext_rdbms/mysql/models/configuration_py3.py new file mode 100644 index 00000000000..9ad3350cf61 --- /dev/null +++ b/src/rdbms/azext_rdbms/mysql/models/configuration_py3.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource import ProxyResource + + +class Configuration(ProxyResource): + """Represents a Configuration. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param value: Value of the configuration. + :type value: str + :ivar description: Description of the configuration. + :vartype description: str + :ivar default_value: Default value of the configuration. + :vartype default_value: str + :ivar data_type: Data type of the configuration. + :vartype data_type: str + :ivar allowed_values: Allowed values of the configuration. + :vartype allowed_values: str + :param source: Source of the configuration. + :type source: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'description': {'readonly': True}, + 'default_value': {'readonly': True}, + 'data_type': {'readonly': True}, + 'allowed_values': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'value': {'key': 'properties.value', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'default_value': {'key': 'properties.defaultValue', 'type': 'str'}, + 'data_type': {'key': 'properties.dataType', 'type': 'str'}, + 'allowed_values': {'key': 'properties.allowedValues', 'type': 'str'}, + 'source': {'key': 'properties.source', 'type': 'str'}, + } + + def __init__(self, *, value: str=None, source: str=None, **kwargs) -> None: + super(Configuration, self).__init__(, **kwargs) + self.value = value + self.description = None + self.default_value = None + self.data_type = None + self.allowed_values = None + self.source = source diff --git a/src/rdbms/azext_rdbms/mysql/models/database.py b/src/rdbms/azext_rdbms/mysql/models/database.py index f4e129302c9..f503efb9fa3 100644 --- a/src/rdbms/azext_rdbms/mysql/models/database.py +++ b/src/rdbms/azext_rdbms/mysql/models/database.py @@ -44,7 +44,7 @@ class Database(ProxyResource): 'collation': {'key': 'properties.collation', 'type': 'str'}, } - def __init__(self, charset=None, collation=None): - super(Database, self).__init__() - self.charset = charset - self.collation = collation + def __init__(self, **kwargs): + super(Database, self).__init__(**kwargs) + self.charset = kwargs.get('charset', None) + self.collation = kwargs.get('collation', None) diff --git a/src/rdbms/azext_rdbms/mysql/models/database_py3.py b/src/rdbms/azext_rdbms/mysql/models/database_py3.py new file mode 100644 index 00000000000..e7880e928d6 --- /dev/null +++ b/src/rdbms/azext_rdbms/mysql/models/database_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource import ProxyResource + + +class Database(ProxyResource): + """Represents a Database. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param charset: The charset of the database. + :type charset: str + :param collation: The collation of the database. + :type collation: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'charset': {'key': 'properties.charset', 'type': 'str'}, + 'collation': {'key': 'properties.collation', 'type': 'str'}, + } + + def __init__(self, *, charset: str=None, collation: str=None, **kwargs) -> None: + super(Database, self).__init__(, **kwargs) + self.charset = charset + self.collation = collation diff --git a/src/rdbms/azext_rdbms/mysql/models/firewall_rule.py b/src/rdbms/azext_rdbms/mysql/models/firewall_rule.py index ed7b9c13a02..af9a04f835d 100644 --- a/src/rdbms/azext_rdbms/mysql/models/firewall_rule.py +++ b/src/rdbms/azext_rdbms/mysql/models/firewall_rule.py @@ -18,17 +18,19 @@ class FirewallRule(ProxyResource): Variables are only populated by the server, and will be ignored when sending a request. + All required parameters must be populated in order to send to Azure. + :ivar id: Resource ID :vartype id: str :ivar name: Resource name. :vartype name: str :ivar type: Resource type. :vartype type: str - :param start_ip_address: The start IP address of the server firewall rule. - Must be IPv4 format. + :param start_ip_address: Required. The start IP address of the server + firewall rule. Must be IPv4 format. :type start_ip_address: str - :param end_ip_address: The end IP address of the server firewall rule. - Must be IPv4 format. + :param end_ip_address: Required. The end IP address of the server firewall + rule. Must be IPv4 format. :type end_ip_address: str """ @@ -48,7 +50,7 @@ class FirewallRule(ProxyResource): 'end_ip_address': {'key': 'properties.endIpAddress', 'type': 'str'}, } - def __init__(self, start_ip_address, end_ip_address): - super(FirewallRule, self).__init__() - self.start_ip_address = start_ip_address - self.end_ip_address = end_ip_address + def __init__(self, **kwargs): + super(FirewallRule, self).__init__(**kwargs) + self.start_ip_address = kwargs.get('start_ip_address', None) + self.end_ip_address = kwargs.get('end_ip_address', None) diff --git a/src/rdbms/azext_rdbms/mysql/models/firewall_rule_py3.py b/src/rdbms/azext_rdbms/mysql/models/firewall_rule_py3.py new file mode 100644 index 00000000000..2891333362d --- /dev/null +++ b/src/rdbms/azext_rdbms/mysql/models/firewall_rule_py3.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource import ProxyResource + + +class FirewallRule(ProxyResource): + """Represents a server firewall rule. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param start_ip_address: Required. The start IP address of the server + firewall rule. Must be IPv4 format. + :type start_ip_address: str + :param end_ip_address: Required. The end IP address of the server firewall + rule. Must be IPv4 format. + :type end_ip_address: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'start_ip_address': {'required': True, 'pattern': r'^(([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])$'}, + 'end_ip_address': {'required': True, 'pattern': r'^(([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])$'}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'start_ip_address': {'key': 'properties.startIpAddress', 'type': 'str'}, + 'end_ip_address': {'key': 'properties.endIpAddress', 'type': 'str'}, + } + + def __init__(self, *, start_ip_address: str, end_ip_address: str, **kwargs) -> None: + super(FirewallRule, self).__init__(, **kwargs) + self.start_ip_address = start_ip_address + self.end_ip_address = end_ip_address diff --git a/src/rdbms/azext_rdbms/mysql/models/log_file.py b/src/rdbms/azext_rdbms/mysql/models/log_file.py index 56ba143dae2..214dae4dbee 100644 --- a/src/rdbms/azext_rdbms/mysql/models/log_file.py +++ b/src/rdbms/azext_rdbms/mysql/models/log_file.py @@ -55,10 +55,10 @@ class LogFile(ProxyResource): 'url': {'key': 'properties.url', 'type': 'str'}, } - def __init__(self, size_in_kb=None, log_file_type=None, url=None): - super(LogFile, self).__init__() - self.size_in_kb = size_in_kb + def __init__(self, **kwargs): + super(LogFile, self).__init__(**kwargs) + self.size_in_kb = kwargs.get('size_in_kb', None) self.created_time = None self.last_modified_time = None - self.log_file_type = log_file_type - self.url = url + self.log_file_type = kwargs.get('log_file_type', None) + self.url = kwargs.get('url', None) diff --git a/src/rdbms/azext_rdbms/mysql/models/log_file_py3.py b/src/rdbms/azext_rdbms/mysql/models/log_file_py3.py new file mode 100644 index 00000000000..060afec5668 --- /dev/null +++ b/src/rdbms/azext_rdbms/mysql/models/log_file_py3.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource import ProxyResource + + +class LogFile(ProxyResource): + """Represents a log file. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param size_in_kb: Size of the log file. + :type size_in_kb: long + :ivar created_time: Creation timestamp of the log file. + :vartype created_time: datetime + :ivar last_modified_time: Last modified timestamp of the log file. + :vartype last_modified_time: datetime + :param log_file_type: Type of the log file. + :type log_file_type: str + :param url: The url to download the log file from. + :type url: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'created_time': {'readonly': True}, + 'last_modified_time': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'size_in_kb': {'key': 'properties.sizeInKB', 'type': 'long'}, + 'created_time': {'key': 'properties.createdTime', 'type': 'iso-8601'}, + 'last_modified_time': {'key': 'properties.lastModifiedTime', 'type': 'iso-8601'}, + 'log_file_type': {'key': 'properties.type', 'type': 'str'}, + 'url': {'key': 'properties.url', 'type': 'str'}, + } + + def __init__(self, *, size_in_kb: int=None, log_file_type: str=None, url: str=None, **kwargs) -> None: + super(LogFile, self).__init__(, **kwargs) + self.size_in_kb = size_in_kb + self.created_time = None + self.last_modified_time = None + self.log_file_type = log_file_type + self.url = url diff --git a/src/rdbms/azext_rdbms/mysql/models/my_sql_management_client_enums.py b/src/rdbms/azext_rdbms/mysql/models/my_sql_management_client_enums.py index c1d7935c045..ec49c1bde64 100644 --- a/src/rdbms/azext_rdbms/mysql/models/my_sql_management_client_enums.py +++ b/src/rdbms/azext_rdbms/mysql/models/my_sql_management_client_enums.py @@ -12,39 +12,39 @@ from enum import Enum -class ServerVersion(Enum): +class ServerVersion(str, Enum): five_full_stop_six = "5.6" five_full_stop_seven = "5.7" -class SslEnforcementEnum(Enum): +class SslEnforcementEnum(str, Enum): enabled = "Enabled" disabled = "Disabled" -class ServerState(Enum): +class ServerState(str, Enum): ready = "Ready" dropping = "Dropping" disabled = "Disabled" -class GeoRedundantBackup(Enum): +class GeoRedundantBackup(str, Enum): enabled = "Enabled" disabled = "Disabled" -class SkuTier(Enum): +class SkuTier(str, Enum): basic = "Basic" general_purpose = "GeneralPurpose" memory_optimized = "MemoryOptimized" -class OperationOrigin(Enum): +class OperationOrigin(str, Enum): not_specified = "NotSpecified" user = "user" diff --git a/src/rdbms/azext_rdbms/mysql/models/name_availability.py b/src/rdbms/azext_rdbms/mysql/models/name_availability.py index b7759d8d472..327a74ca8a4 100644 --- a/src/rdbms/azext_rdbms/mysql/models/name_availability.py +++ b/src/rdbms/azext_rdbms/mysql/models/name_availability.py @@ -29,8 +29,8 @@ class NameAvailability(Model): 'reason': {'key': 'reason', 'type': 'str'}, } - def __init__(self, message=None, name_available=None, reason=None): - super(NameAvailability, self).__init__() - self.message = message - self.name_available = name_available - self.reason = reason + def __init__(self, **kwargs): + super(NameAvailability, self).__init__(**kwargs) + self.message = kwargs.get('message', None) + self.name_available = kwargs.get('name_available', None) + self.reason = kwargs.get('reason', None) diff --git a/src/rdbms/azext_rdbms/mysql/models/name_availability_py3.py b/src/rdbms/azext_rdbms/mysql/models/name_availability_py3.py new file mode 100644 index 00000000000..f7b52a09e29 --- /dev/null +++ b/src/rdbms/azext_rdbms/mysql/models/name_availability_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NameAvailability(Model): + """Represents a resource name availability. + + :param message: Error Message. + :type message: str + :param name_available: Indicates whether the resource name is available. + :type name_available: bool + :param reason: Reason for name being unavailable. + :type reason: str + """ + + _attribute_map = { + 'message': {'key': 'message', 'type': 'str'}, + 'name_available': {'key': 'nameAvailable', 'type': 'bool'}, + 'reason': {'key': 'reason', 'type': 'str'}, + } + + def __init__(self, *, message: str=None, name_available: bool=None, reason: str=None, **kwargs) -> None: + super(NameAvailability, self).__init__(**kwargs) + self.message = message + self.name_available = name_available + self.reason = reason diff --git a/src/rdbms/azext_rdbms/mysql/models/name_availability_request.py b/src/rdbms/azext_rdbms/mysql/models/name_availability_request.py index 715b87ea367..33cac8ab530 100644 --- a/src/rdbms/azext_rdbms/mysql/models/name_availability_request.py +++ b/src/rdbms/azext_rdbms/mysql/models/name_availability_request.py @@ -15,7 +15,9 @@ class NameAvailabilityRequest(Model): """Request from client to check resource name availability. - :param name: Resource name to verify. + All required parameters must be populated in order to send to Azure. + + :param name: Required. Resource name to verify. :type name: str :param type: Resource type used for verification. :type type: str @@ -30,7 +32,7 @@ class NameAvailabilityRequest(Model): 'type': {'key': 'type', 'type': 'str'}, } - def __init__(self, name, type=None): - super(NameAvailabilityRequest, self).__init__() - self.name = name - self.type = type + def __init__(self, **kwargs): + super(NameAvailabilityRequest, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.type = kwargs.get('type', None) diff --git a/src/rdbms/azext_rdbms/mysql/models/name_availability_request_py3.py b/src/rdbms/azext_rdbms/mysql/models/name_availability_request_py3.py new file mode 100644 index 00000000000..ec45bb2e473 --- /dev/null +++ b/src/rdbms/azext_rdbms/mysql/models/name_availability_request_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NameAvailabilityRequest(Model): + """Request from client to check resource name availability. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. Resource name to verify. + :type name: str + :param type: Resource type used for verification. + :type type: str + """ + + _validation = { + 'name': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, name: str, type: str=None, **kwargs) -> None: + super(NameAvailabilityRequest, self).__init__(**kwargs) + self.name = name + self.type = type diff --git a/src/rdbms/azext_rdbms/mysql/models/operation.py b/src/rdbms/azext_rdbms/mysql/models/operation.py index d177c6129f3..dfd48f5fa19 100644 --- a/src/rdbms/azext_rdbms/mysql/models/operation.py +++ b/src/rdbms/azext_rdbms/mysql/models/operation.py @@ -45,8 +45,8 @@ class Operation(Model): 'properties': {'key': 'properties', 'type': '{object}'}, } - def __init__(self): - super(Operation, self).__init__() + def __init__(self, **kwargs): + super(Operation, self).__init__(**kwargs) self.name = None self.display = None self.origin = None diff --git a/src/rdbms/azext_rdbms/mysql/models/operation_display.py b/src/rdbms/azext_rdbms/mysql/models/operation_display.py index 66b7f736d29..98314a2871d 100644 --- a/src/rdbms/azext_rdbms/mysql/models/operation_display.py +++ b/src/rdbms/azext_rdbms/mysql/models/operation_display.py @@ -42,8 +42,8 @@ class OperationDisplay(Model): 'description': {'key': 'description', 'type': 'str'}, } - def __init__(self): - super(OperationDisplay, self).__init__() + def __init__(self, **kwargs): + super(OperationDisplay, self).__init__(**kwargs) self.provider = None self.resource = None self.operation = None diff --git a/src/rdbms/azext_rdbms/mysql/models/operation_display_py3.py b/src/rdbms/azext_rdbms/mysql/models/operation_display_py3.py new file mode 100644 index 00000000000..9b5a77c699a --- /dev/null +++ b/src/rdbms/azext_rdbms/mysql/models/operation_display_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationDisplay(Model): + """Display metadata associated with the operation. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar provider: Operation resource provider name. + :vartype provider: str + :ivar resource: Resource on which the operation is performed. + :vartype resource: str + :ivar operation: Localized friendly name for the operation. + :vartype operation: str + :ivar description: Operation description. + :vartype description: str + """ + + _validation = { + 'provider': {'readonly': True}, + 'resource': {'readonly': True}, + 'operation': {'readonly': True}, + 'description': {'readonly': True}, + } + + _attribute_map = { + 'provider': {'key': 'provider', 'type': 'str'}, + 'resource': {'key': 'resource', 'type': 'str'}, + 'operation': {'key': 'operation', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(OperationDisplay, self).__init__(**kwargs) + self.provider = None + self.resource = None + self.operation = None + self.description = None diff --git a/src/rdbms/azext_rdbms/mysql/models/operation_list_result.py b/src/rdbms/azext_rdbms/mysql/models/operation_list_result.py index 55da5a63aa3..a170a4afa8d 100644 --- a/src/rdbms/azext_rdbms/mysql/models/operation_list_result.py +++ b/src/rdbms/azext_rdbms/mysql/models/operation_list_result.py @@ -23,6 +23,6 @@ class OperationListResult(Model): 'value': {'key': 'value', 'type': '[Operation]'}, } - def __init__(self, value=None): - super(OperationListResult, self).__init__() - self.value = value + def __init__(self, **kwargs): + super(OperationListResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) diff --git a/src/rdbms/azext_rdbms/mysql/models/operation_list_result_py3.py b/src/rdbms/azext_rdbms/mysql/models/operation_list_result_py3.py new file mode 100644 index 00000000000..d90867e62f9 --- /dev/null +++ b/src/rdbms/azext_rdbms/mysql/models/operation_list_result_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationListResult(Model): + """A list of resource provider operations. + + :param value: The list of resource provider operations. + :type value: list[~azure.mgmt.rdbms.mysql.models.Operation] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[Operation]'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(OperationListResult, self).__init__(**kwargs) + self.value = value diff --git a/src/rdbms/azext_rdbms/mysql/models/operation_py3.py b/src/rdbms/azext_rdbms/mysql/models/operation_py3.py new file mode 100644 index 00000000000..1bbddecaa32 --- /dev/null +++ b/src/rdbms/azext_rdbms/mysql/models/operation_py3.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Operation(Model): + """REST API operation definition. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar name: The name of the operation being performed on this particular + object. + :vartype name: str + :ivar display: The localized display information for this particular + operation or action. + :vartype display: ~azure.mgmt.rdbms.mysql.models.OperationDisplay + :ivar origin: The intended executor of the operation. Possible values + include: 'NotSpecified', 'user', 'system' + :vartype origin: str or ~azure.mgmt.rdbms.mysql.models.OperationOrigin + :ivar properties: Additional descriptions for the operation. + :vartype properties: dict[str, object] + """ + + _validation = { + 'name': {'readonly': True}, + 'display': {'readonly': True}, + 'origin': {'readonly': True}, + 'properties': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display': {'key': 'display', 'type': 'OperationDisplay'}, + 'origin': {'key': 'origin', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': '{object}'}, + } + + def __init__(self, **kwargs) -> None: + super(Operation, self).__init__(**kwargs) + self.name = None + self.display = None + self.origin = None + self.properties = None diff --git a/src/rdbms/azext_rdbms/mysql/models/performance_tier_properties.py b/src/rdbms/azext_rdbms/mysql/models/performance_tier_properties.py index dd50ed653f8..5e3a3c8b174 100644 --- a/src/rdbms/azext_rdbms/mysql/models/performance_tier_properties.py +++ b/src/rdbms/azext_rdbms/mysql/models/performance_tier_properties.py @@ -28,7 +28,7 @@ class PerformanceTierProperties(Model): 'service_level_objectives': {'key': 'serviceLevelObjectives', 'type': '[PerformanceTierServiceLevelObjectives]'}, } - def __init__(self, id=None, service_level_objectives=None): - super(PerformanceTierProperties, self).__init__() - self.id = id - self.service_level_objectives = service_level_objectives + def __init__(self, **kwargs): + super(PerformanceTierProperties, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.service_level_objectives = kwargs.get('service_level_objectives', None) diff --git a/src/rdbms/azext_rdbms/mysql/models/performance_tier_properties_py3.py b/src/rdbms/azext_rdbms/mysql/models/performance_tier_properties_py3.py new file mode 100644 index 00000000000..b75517b4945 --- /dev/null +++ b/src/rdbms/azext_rdbms/mysql/models/performance_tier_properties_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PerformanceTierProperties(Model): + """Performance tier properties. + + :param id: ID of the performance tier. + :type id: str + :param service_level_objectives: Service level objectives associated with + the performance tier + :type service_level_objectives: + list[~azure.mgmt.rdbms.mysql.models.PerformanceTierServiceLevelObjectives] + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'service_level_objectives': {'key': 'serviceLevelObjectives', 'type': '[PerformanceTierServiceLevelObjectives]'}, + } + + def __init__(self, *, id: str=None, service_level_objectives=None, **kwargs) -> None: + super(PerformanceTierProperties, self).__init__(**kwargs) + self.id = id + self.service_level_objectives = service_level_objectives diff --git a/src/rdbms/azext_rdbms/mysql/models/performance_tier_service_level_objectives.py b/src/rdbms/azext_rdbms/mysql/models/performance_tier_service_level_objectives.py index 08541b20c60..4f653dc2834 100644 --- a/src/rdbms/azext_rdbms/mysql/models/performance_tier_service_level_objectives.py +++ b/src/rdbms/azext_rdbms/mysql/models/performance_tier_service_level_objectives.py @@ -47,13 +47,13 @@ class PerformanceTierServiceLevelObjectives(Model): 'min_storage_mb': {'key': 'minStorageMB', 'type': 'int'}, } - def __init__(self, id=None, edition=None, v_core=None, hardware_generation=None, max_backup_retention_days=None, min_backup_retention_days=None, max_storage_mb=None, min_storage_mb=None): - super(PerformanceTierServiceLevelObjectives, self).__init__() - self.id = id - self.edition = edition - self.v_core = v_core - self.hardware_generation = hardware_generation - self.max_backup_retention_days = max_backup_retention_days - self.min_backup_retention_days = min_backup_retention_days - self.max_storage_mb = max_storage_mb - self.min_storage_mb = min_storage_mb + def __init__(self, **kwargs): + super(PerformanceTierServiceLevelObjectives, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.edition = kwargs.get('edition', None) + self.v_core = kwargs.get('v_core', None) + self.hardware_generation = kwargs.get('hardware_generation', None) + self.max_backup_retention_days = kwargs.get('max_backup_retention_days', None) + self.min_backup_retention_days = kwargs.get('min_backup_retention_days', None) + self.max_storage_mb = kwargs.get('max_storage_mb', None) + self.min_storage_mb = kwargs.get('min_storage_mb', None) diff --git a/src/rdbms/azext_rdbms/mysql/models/performance_tier_service_level_objectives_py3.py b/src/rdbms/azext_rdbms/mysql/models/performance_tier_service_level_objectives_py3.py new file mode 100644 index 00000000000..083e4720ab4 --- /dev/null +++ b/src/rdbms/azext_rdbms/mysql/models/performance_tier_service_level_objectives_py3.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PerformanceTierServiceLevelObjectives(Model): + """Service level objectives for performance tier. + + :param id: ID for the service level objective. + :type id: str + :param edition: Edition of the performance tier. + :type edition: str + :param v_core: vCore associated with the service level objective + :type v_core: int + :param hardware_generation: Hardware generation associated with the + service level objective + :type hardware_generation: str + :param max_backup_retention_days: Maximum Backup retention in days for the + performance tier edition + :type max_backup_retention_days: int + :param min_backup_retention_days: Minimum Backup retention in days for the + performance tier edition + :type min_backup_retention_days: int + :param max_storage_mb: Max storage allowed for a server. + :type max_storage_mb: int + :param min_storage_mb: Max storage allowed for a server. + :type min_storage_mb: int + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'edition': {'key': 'edition', 'type': 'str'}, + 'v_core': {'key': 'vCore', 'type': 'int'}, + 'hardware_generation': {'key': 'hardwareGeneration', 'type': 'str'}, + 'max_backup_retention_days': {'key': 'maxBackupRetentionDays', 'type': 'int'}, + 'min_backup_retention_days': {'key': 'minBackupRetentionDays', 'type': 'int'}, + 'max_storage_mb': {'key': 'maxStorageMB', 'type': 'int'}, + 'min_storage_mb': {'key': 'minStorageMB', 'type': 'int'}, + } + + def __init__(self, *, id: str=None, edition: str=None, v_core: int=None, hardware_generation: str=None, max_backup_retention_days: int=None, min_backup_retention_days: int=None, max_storage_mb: int=None, min_storage_mb: int=None, **kwargs) -> None: + super(PerformanceTierServiceLevelObjectives, self).__init__(**kwargs) + self.id = id + self.edition = edition + self.v_core = v_core + self.hardware_generation = hardware_generation + self.max_backup_retention_days = max_backup_retention_days + self.min_backup_retention_days = min_backup_retention_days + self.max_storage_mb = max_storage_mb + self.min_storage_mb = min_storage_mb diff --git a/src/rdbms/azext_rdbms/mysql/models/proxy_resource.py b/src/rdbms/azext_rdbms/mysql/models/proxy_resource.py index b982916c5e5..1223f4670fe 100644 --- a/src/rdbms/azext_rdbms/mysql/models/proxy_resource.py +++ b/src/rdbms/azext_rdbms/mysql/models/proxy_resource.py @@ -38,8 +38,8 @@ class ProxyResource(Model): 'type': {'key': 'type', 'type': 'str'}, } - def __init__(self): - super(ProxyResource, self).__init__() + def __init__(self, **kwargs): + super(ProxyResource, self).__init__(**kwargs) self.id = None self.name = None self.type = None diff --git a/src/rdbms/azext_rdbms/mysql/models/proxy_resource_py3.py b/src/rdbms/azext_rdbms/mysql/models/proxy_resource_py3.py new file mode 100644 index 00000000000..e0dde467e58 --- /dev/null +++ b/src/rdbms/azext_rdbms/mysql/models/proxy_resource_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ProxyResource(Model): + """Resource properties. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(ProxyResource, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None diff --git a/src/rdbms/azext_rdbms/mysql/models/server.py b/src/rdbms/azext_rdbms/mysql/models/server.py index 46e114056c5..116986a98b9 100644 --- a/src/rdbms/azext_rdbms/mysql/models/server.py +++ b/src/rdbms/azext_rdbms/mysql/models/server.py @@ -18,13 +18,15 @@ class Server(TrackedResource): Variables are only populated by the server, and will be ignored when sending a request. + All required parameters must be populated in order to send to Azure. + :ivar id: Resource ID :vartype id: str :ivar name: Resource name. :vartype name: str :ivar type: Resource type. :vartype type: str - :param location: The location the resource resides in. + :param location: Required. The location the resource resides in. :type location: str :param tags: Application-specific metadata in the form of key-value pairs. :type tags: dict[str, str] @@ -77,13 +79,13 @@ class Server(TrackedResource): 'storage_profile': {'key': 'properties.storageProfile', 'type': 'StorageProfile'}, } - def __init__(self, location, tags=None, sku=None, administrator_login=None, version=None, ssl_enforcement=None, user_visible_state=None, fully_qualified_domain_name=None, earliest_restore_date=None, storage_profile=None): - super(Server, self).__init__(location=location, tags=tags) - self.sku = sku - self.administrator_login = administrator_login - self.version = version - self.ssl_enforcement = ssl_enforcement - self.user_visible_state = user_visible_state - self.fully_qualified_domain_name = fully_qualified_domain_name - self.earliest_restore_date = earliest_restore_date - self.storage_profile = storage_profile + def __init__(self, **kwargs): + super(Server, self).__init__(**kwargs) + self.sku = kwargs.get('sku', None) + self.administrator_login = kwargs.get('administrator_login', None) + self.version = kwargs.get('version', None) + self.ssl_enforcement = kwargs.get('ssl_enforcement', None) + self.user_visible_state = kwargs.get('user_visible_state', None) + self.fully_qualified_domain_name = kwargs.get('fully_qualified_domain_name', None) + self.earliest_restore_date = kwargs.get('earliest_restore_date', None) + self.storage_profile = kwargs.get('storage_profile', None) diff --git a/src/rdbms/azext_rdbms/mysql/models/server_for_create.py b/src/rdbms/azext_rdbms/mysql/models/server_for_create.py index 2de6f910be1..11c78dc85a9 100644 --- a/src/rdbms/azext_rdbms/mysql/models/server_for_create.py +++ b/src/rdbms/azext_rdbms/mysql/models/server_for_create.py @@ -15,11 +15,13 @@ class ServerForCreate(Model): """Represents a server to be created. + All required parameters must be populated in order to send to Azure. + :param sku: The SKU (pricing tier) of the server. :type sku: ~azure.mgmt.rdbms.mysql.models.Sku - :param properties: Properties of the server. + :param properties: Required. Properties of the server. :type properties: ~azure.mgmt.rdbms.mysql.models.ServerPropertiesForCreate - :param location: The location the resource resides in. + :param location: Required. The location the resource resides in. :type location: str :param tags: Application-specific metadata in the form of key-value pairs. :type tags: dict[str, str] @@ -37,9 +39,9 @@ class ServerForCreate(Model): 'tags': {'key': 'tags', 'type': '{str}'}, } - def __init__(self, properties, location, sku=None, tags=None): - super(ServerForCreate, self).__init__() - self.sku = sku - self.properties = properties - self.location = location - self.tags = tags + def __init__(self, **kwargs): + super(ServerForCreate, self).__init__(**kwargs) + self.sku = kwargs.get('sku', None) + self.properties = kwargs.get('properties', None) + self.location = kwargs.get('location', None) + self.tags = kwargs.get('tags', None) diff --git a/src/rdbms/azext_rdbms/mysql/models/server_for_create_py3.py b/src/rdbms/azext_rdbms/mysql/models/server_for_create_py3.py new file mode 100644 index 00000000000..485e9433b9d --- /dev/null +++ b/src/rdbms/azext_rdbms/mysql/models/server_for_create_py3.py @@ -0,0 +1,47 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ServerForCreate(Model): + """Represents a server to be created. + + All required parameters must be populated in order to send to Azure. + + :param sku: The SKU (pricing tier) of the server. + :type sku: ~azure.mgmt.rdbms.mysql.models.Sku + :param properties: Required. Properties of the server. + :type properties: ~azure.mgmt.rdbms.mysql.models.ServerPropertiesForCreate + :param location: Required. The location the resource resides in. + :type location: str + :param tags: Application-specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _validation = { + 'properties': {'required': True}, + 'location': {'required': True}, + } + + _attribute_map = { + 'sku': {'key': 'sku', 'type': 'Sku'}, + 'properties': {'key': 'properties', 'type': 'ServerPropertiesForCreate'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, properties, location: str, sku=None, tags=None, **kwargs) -> None: + super(ServerForCreate, self).__init__(**kwargs) + self.sku = sku + self.properties = properties + self.location = location + self.tags = tags diff --git a/src/rdbms/azext_rdbms/mysql/models/server_properties_for_create.py b/src/rdbms/azext_rdbms/mysql/models/server_properties_for_create.py index 6b9c35bf32c..9484fd87e32 100644 --- a/src/rdbms/azext_rdbms/mysql/models/server_properties_for_create.py +++ b/src/rdbms/azext_rdbms/mysql/models/server_properties_for_create.py @@ -17,7 +17,9 @@ class ServerPropertiesForCreate(Model): You probably want to use the sub-classes and not this class directly. Known sub-classes are: ServerPropertiesForDefaultCreate, - ServerPropertiesForRestore + ServerPropertiesForRestore, ServerPropertiesForGeoRestore + + All required parameters must be populated in order to send to Azure. :param version: Server version. Possible values include: '5.6', '5.7' :type version: str or ~azure.mgmt.rdbms.mysql.models.ServerVersion @@ -27,7 +29,7 @@ class ServerPropertiesForCreate(Model): ~azure.mgmt.rdbms.mysql.models.SslEnforcementEnum :param storage_profile: Storage profile of a server. :type storage_profile: ~azure.mgmt.rdbms.mysql.models.StorageProfile - :param create_mode: Constant filled by server. + :param create_mode: Required. Constant filled by server. :type create_mode: str """ @@ -43,12 +45,12 @@ class ServerPropertiesForCreate(Model): } _subtype_map = { - 'create_mode': {'Default': 'ServerPropertiesForDefaultCreate', 'PointInTimeRestore': 'ServerPropertiesForRestore'} + 'create_mode': {'Default': 'ServerPropertiesForDefaultCreate', 'PointInTimeRestore': 'ServerPropertiesForRestore', 'GeoRestore': 'ServerPropertiesForGeoRestore'} } - def __init__(self, version=None, ssl_enforcement=None, storage_profile=None): - super(ServerPropertiesForCreate, self).__init__() - self.version = version - self.ssl_enforcement = ssl_enforcement - self.storage_profile = storage_profile + def __init__(self, **kwargs): + super(ServerPropertiesForCreate, self).__init__(**kwargs) + self.version = kwargs.get('version', None) + self.ssl_enforcement = kwargs.get('ssl_enforcement', None) + self.storage_profile = kwargs.get('storage_profile', None) self.create_mode = None diff --git a/src/rdbms/azext_rdbms/mysql/models/server_properties_for_create_py3.py b/src/rdbms/azext_rdbms/mysql/models/server_properties_for_create_py3.py new file mode 100644 index 00000000000..99460d06ef3 --- /dev/null +++ b/src/rdbms/azext_rdbms/mysql/models/server_properties_for_create_py3.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ServerPropertiesForCreate(Model): + """The properties used to create a new server. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: ServerPropertiesForDefaultCreate, + ServerPropertiesForRestore, ServerPropertiesForGeoRestore + + All required parameters must be populated in order to send to Azure. + + :param version: Server version. Possible values include: '5.6', '5.7' + :type version: str or ~azure.mgmt.rdbms.mysql.models.ServerVersion + :param ssl_enforcement: Enable ssl enforcement or not when connect to + server. Possible values include: 'Enabled', 'Disabled' + :type ssl_enforcement: str or + ~azure.mgmt.rdbms.mysql.models.SslEnforcementEnum + :param storage_profile: Storage profile of a server. + :type storage_profile: ~azure.mgmt.rdbms.mysql.models.StorageProfile + :param create_mode: Required. Constant filled by server. + :type create_mode: str + """ + + _validation = { + 'create_mode': {'required': True}, + } + + _attribute_map = { + 'version': {'key': 'version', 'type': 'str'}, + 'ssl_enforcement': {'key': 'sslEnforcement', 'type': 'SslEnforcementEnum'}, + 'storage_profile': {'key': 'storageProfile', 'type': 'StorageProfile'}, + 'create_mode': {'key': 'createMode', 'type': 'str'}, + } + + _subtype_map = { + 'create_mode': {'Default': 'ServerPropertiesForDefaultCreate', 'PointInTimeRestore': 'ServerPropertiesForRestore', 'GeoRestore': 'ServerPropertiesForGeoRestore'} + } + + def __init__(self, *, version=None, ssl_enforcement=None, storage_profile=None, **kwargs) -> None: + super(ServerPropertiesForCreate, self).__init__(**kwargs) + self.version = version + self.ssl_enforcement = ssl_enforcement + self.storage_profile = storage_profile + self.create_mode = None diff --git a/src/rdbms/azext_rdbms/mysql/models/server_properties_for_default_create.py b/src/rdbms/azext_rdbms/mysql/models/server_properties_for_default_create.py index 5421c3059e4..a144a3a7a8d 100644 --- a/src/rdbms/azext_rdbms/mysql/models/server_properties_for_default_create.py +++ b/src/rdbms/azext_rdbms/mysql/models/server_properties_for_default_create.py @@ -15,6 +15,8 @@ class ServerPropertiesForDefaultCreate(ServerPropertiesForCreate): """The properties used to create a new server. + All required parameters must be populated in order to send to Azure. + :param version: Server version. Possible values include: '5.6', '5.7' :type version: str or ~azure.mgmt.rdbms.mysql.models.ServerVersion :param ssl_enforcement: Enable ssl enforcement or not when connect to @@ -23,14 +25,14 @@ class ServerPropertiesForDefaultCreate(ServerPropertiesForCreate): ~azure.mgmt.rdbms.mysql.models.SslEnforcementEnum :param storage_profile: Storage profile of a server. :type storage_profile: ~azure.mgmt.rdbms.mysql.models.StorageProfile - :param create_mode: Constant filled by server. + :param create_mode: Required. Constant filled by server. :type create_mode: str - :param administrator_login: The administrator's login name of a server. - Can only be specified when the server is being created (and is required - for creation). + :param administrator_login: Required. The administrator's login name of a + server. Can only be specified when the server is being created (and is + required for creation). :type administrator_login: str - :param administrator_login_password: The password of the administrator - login. + :param administrator_login_password: Required. The password of the + administrator login. :type administrator_login_password: str """ @@ -49,8 +51,8 @@ class ServerPropertiesForDefaultCreate(ServerPropertiesForCreate): 'administrator_login_password': {'key': 'administratorLoginPassword', 'type': 'str'}, } - def __init__(self, administrator_login, administrator_login_password, version=None, ssl_enforcement=None, storage_profile=None): - super(ServerPropertiesForDefaultCreate, self).__init__(version=version, ssl_enforcement=ssl_enforcement, storage_profile=storage_profile) - self.administrator_login = administrator_login - self.administrator_login_password = administrator_login_password + def __init__(self, **kwargs): + super(ServerPropertiesForDefaultCreate, self).__init__(**kwargs) + self.administrator_login = kwargs.get('administrator_login', None) + self.administrator_login_password = kwargs.get('administrator_login_password', None) self.create_mode = 'Default' diff --git a/src/rdbms/azext_rdbms/mysql/models/server_properties_for_default_create_py3.py b/src/rdbms/azext_rdbms/mysql/models/server_properties_for_default_create_py3.py new file mode 100644 index 00000000000..96215514555 --- /dev/null +++ b/src/rdbms/azext_rdbms/mysql/models/server_properties_for_default_create_py3.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .server_properties_for_create import ServerPropertiesForCreate + + +class ServerPropertiesForDefaultCreate(ServerPropertiesForCreate): + """The properties used to create a new server. + + All required parameters must be populated in order to send to Azure. + + :param version: Server version. Possible values include: '5.6', '5.7' + :type version: str or ~azure.mgmt.rdbms.mysql.models.ServerVersion + :param ssl_enforcement: Enable ssl enforcement or not when connect to + server. Possible values include: 'Enabled', 'Disabled' + :type ssl_enforcement: str or + ~azure.mgmt.rdbms.mysql.models.SslEnforcementEnum + :param storage_profile: Storage profile of a server. + :type storage_profile: ~azure.mgmt.rdbms.mysql.models.StorageProfile + :param create_mode: Required. Constant filled by server. + :type create_mode: str + :param administrator_login: Required. The administrator's login name of a + server. Can only be specified when the server is being created (and is + required for creation). + :type administrator_login: str + :param administrator_login_password: Required. The password of the + administrator login. + :type administrator_login_password: str + """ + + _validation = { + 'create_mode': {'required': True}, + 'administrator_login': {'required': True}, + 'administrator_login_password': {'required': True}, + } + + _attribute_map = { + 'version': {'key': 'version', 'type': 'str'}, + 'ssl_enforcement': {'key': 'sslEnforcement', 'type': 'SslEnforcementEnum'}, + 'storage_profile': {'key': 'storageProfile', 'type': 'StorageProfile'}, + 'create_mode': {'key': 'createMode', 'type': 'str'}, + 'administrator_login': {'key': 'administratorLogin', 'type': 'str'}, + 'administrator_login_password': {'key': 'administratorLoginPassword', 'type': 'str'}, + } + + def __init__(self, *, administrator_login: str, administrator_login_password: str, version=None, ssl_enforcement=None, storage_profile=None, **kwargs) -> None: + super(ServerPropertiesForDefaultCreate, self).__init__(version=version, ssl_enforcement=ssl_enforcement, storage_profile=storage_profile, **kwargs) + self.administrator_login = administrator_login + self.administrator_login_password = administrator_login_password + self.create_mode = 'Default' diff --git a/src/rdbms/azext_rdbms/mysql/models/server_properties_for_geo_restore.py b/src/rdbms/azext_rdbms/mysql/models/server_properties_for_geo_restore.py new file mode 100644 index 00000000000..23aa70dde80 --- /dev/null +++ b/src/rdbms/azext_rdbms/mysql/models/server_properties_for_geo_restore.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .server_properties_for_create import ServerPropertiesForCreate + + +class ServerPropertiesForGeoRestore(ServerPropertiesForCreate): + """The properties used to create a new server by restoring to a different + region from a geo replicated backup. + + All required parameters must be populated in order to send to Azure. + + :param version: Server version. Possible values include: '5.6', '5.7' + :type version: str or ~azure.mgmt.rdbms.mysql.models.ServerVersion + :param ssl_enforcement: Enable ssl enforcement or not when connect to + server. Possible values include: 'Enabled', 'Disabled' + :type ssl_enforcement: str or + ~azure.mgmt.rdbms.mysql.models.SslEnforcementEnum + :param storage_profile: Storage profile of a server. + :type storage_profile: ~azure.mgmt.rdbms.mysql.models.StorageProfile + :param create_mode: Required. Constant filled by server. + :type create_mode: str + :param source_server_id: Required. The source server id to restore from. + :type source_server_id: str + """ + + _validation = { + 'create_mode': {'required': True}, + 'source_server_id': {'required': True}, + } + + _attribute_map = { + 'version': {'key': 'version', 'type': 'str'}, + 'ssl_enforcement': {'key': 'sslEnforcement', 'type': 'SslEnforcementEnum'}, + 'storage_profile': {'key': 'storageProfile', 'type': 'StorageProfile'}, + 'create_mode': {'key': 'createMode', 'type': 'str'}, + 'source_server_id': {'key': 'sourceServerId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ServerPropertiesForGeoRestore, self).__init__(**kwargs) + self.source_server_id = kwargs.get('source_server_id', None) + self.create_mode = 'GeoRestore' diff --git a/src/rdbms/azext_rdbms/mysql/models/server_properties_for_geo_restore_py3.py b/src/rdbms/azext_rdbms/mysql/models/server_properties_for_geo_restore_py3.py new file mode 100644 index 00000000000..dd6cfb4d354 --- /dev/null +++ b/src/rdbms/azext_rdbms/mysql/models/server_properties_for_geo_restore_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .server_properties_for_create import ServerPropertiesForCreate + + +class ServerPropertiesForGeoRestore(ServerPropertiesForCreate): + """The properties used to create a new server by restoring to a different + region from a geo replicated backup. + + All required parameters must be populated in order to send to Azure. + + :param version: Server version. Possible values include: '5.6', '5.7' + :type version: str or ~azure.mgmt.rdbms.mysql.models.ServerVersion + :param ssl_enforcement: Enable ssl enforcement or not when connect to + server. Possible values include: 'Enabled', 'Disabled' + :type ssl_enforcement: str or + ~azure.mgmt.rdbms.mysql.models.SslEnforcementEnum + :param storage_profile: Storage profile of a server. + :type storage_profile: ~azure.mgmt.rdbms.mysql.models.StorageProfile + :param create_mode: Required. Constant filled by server. + :type create_mode: str + :param source_server_id: Required. The source server id to restore from. + :type source_server_id: str + """ + + _validation = { + 'create_mode': {'required': True}, + 'source_server_id': {'required': True}, + } + + _attribute_map = { + 'version': {'key': 'version', 'type': 'str'}, + 'ssl_enforcement': {'key': 'sslEnforcement', 'type': 'SslEnforcementEnum'}, + 'storage_profile': {'key': 'storageProfile', 'type': 'StorageProfile'}, + 'create_mode': {'key': 'createMode', 'type': 'str'}, + 'source_server_id': {'key': 'sourceServerId', 'type': 'str'}, + } + + def __init__(self, *, source_server_id: str, version=None, ssl_enforcement=None, storage_profile=None, **kwargs) -> None: + super(ServerPropertiesForGeoRestore, self).__init__(version=version, ssl_enforcement=ssl_enforcement, storage_profile=storage_profile, **kwargs) + self.source_server_id = source_server_id + self.create_mode = 'GeoRestore' diff --git a/src/rdbms/azext_rdbms/mysql/models/server_properties_for_restore.py b/src/rdbms/azext_rdbms/mysql/models/server_properties_for_restore.py index e43bfce7aa6..fa08c9f36f5 100644 --- a/src/rdbms/azext_rdbms/mysql/models/server_properties_for_restore.py +++ b/src/rdbms/azext_rdbms/mysql/models/server_properties_for_restore.py @@ -13,7 +13,9 @@ class ServerPropertiesForRestore(ServerPropertiesForCreate): - """The properties to a new server by restoring from a backup. + """The properties used to create a new server by restoring from a backup. + + All required parameters must be populated in order to send to Azure. :param version: Server version. Possible values include: '5.6', '5.7' :type version: str or ~azure.mgmt.rdbms.mysql.models.ServerVersion @@ -23,12 +25,12 @@ class ServerPropertiesForRestore(ServerPropertiesForCreate): ~azure.mgmt.rdbms.mysql.models.SslEnforcementEnum :param storage_profile: Storage profile of a server. :type storage_profile: ~azure.mgmt.rdbms.mysql.models.StorageProfile - :param create_mode: Constant filled by server. + :param create_mode: Required. Constant filled by server. :type create_mode: str - :param source_server_id: The source server id to restore from. + :param source_server_id: Required. The source server id to restore from. :type source_server_id: str - :param restore_point_in_time: Restore point creation time (ISO8601 - format), specifying the time to restore from. + :param restore_point_in_time: Required. Restore point creation time + (ISO8601 format), specifying the time to restore from. :type restore_point_in_time: datetime """ @@ -47,8 +49,8 @@ class ServerPropertiesForRestore(ServerPropertiesForCreate): 'restore_point_in_time': {'key': 'restorePointInTime', 'type': 'iso-8601'}, } - def __init__(self, source_server_id, restore_point_in_time, version=None, ssl_enforcement=None, storage_profile=None): - super(ServerPropertiesForRestore, self).__init__(version=version, ssl_enforcement=ssl_enforcement, storage_profile=storage_profile) - self.source_server_id = source_server_id - self.restore_point_in_time = restore_point_in_time + def __init__(self, **kwargs): + super(ServerPropertiesForRestore, self).__init__(**kwargs) + self.source_server_id = kwargs.get('source_server_id', None) + self.restore_point_in_time = kwargs.get('restore_point_in_time', None) self.create_mode = 'PointInTimeRestore' diff --git a/src/rdbms/azext_rdbms/mysql/models/server_properties_for_restore_py3.py b/src/rdbms/azext_rdbms/mysql/models/server_properties_for_restore_py3.py new file mode 100644 index 00000000000..2922fd4e075 --- /dev/null +++ b/src/rdbms/azext_rdbms/mysql/models/server_properties_for_restore_py3.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .server_properties_for_create import ServerPropertiesForCreate + + +class ServerPropertiesForRestore(ServerPropertiesForCreate): + """The properties used to create a new server by restoring from a backup. + + All required parameters must be populated in order to send to Azure. + + :param version: Server version. Possible values include: '5.6', '5.7' + :type version: str or ~azure.mgmt.rdbms.mysql.models.ServerVersion + :param ssl_enforcement: Enable ssl enforcement or not when connect to + server. Possible values include: 'Enabled', 'Disabled' + :type ssl_enforcement: str or + ~azure.mgmt.rdbms.mysql.models.SslEnforcementEnum + :param storage_profile: Storage profile of a server. + :type storage_profile: ~azure.mgmt.rdbms.mysql.models.StorageProfile + :param create_mode: Required. Constant filled by server. + :type create_mode: str + :param source_server_id: Required. The source server id to restore from. + :type source_server_id: str + :param restore_point_in_time: Required. Restore point creation time + (ISO8601 format), specifying the time to restore from. + :type restore_point_in_time: datetime + """ + + _validation = { + 'create_mode': {'required': True}, + 'source_server_id': {'required': True}, + 'restore_point_in_time': {'required': True}, + } + + _attribute_map = { + 'version': {'key': 'version', 'type': 'str'}, + 'ssl_enforcement': {'key': 'sslEnforcement', 'type': 'SslEnforcementEnum'}, + 'storage_profile': {'key': 'storageProfile', 'type': 'StorageProfile'}, + 'create_mode': {'key': 'createMode', 'type': 'str'}, + 'source_server_id': {'key': 'sourceServerId', 'type': 'str'}, + 'restore_point_in_time': {'key': 'restorePointInTime', 'type': 'iso-8601'}, + } + + def __init__(self, *, source_server_id: str, restore_point_in_time, version=None, ssl_enforcement=None, storage_profile=None, **kwargs) -> None: + super(ServerPropertiesForRestore, self).__init__(version=version, ssl_enforcement=ssl_enforcement, storage_profile=storage_profile, **kwargs) + self.source_server_id = source_server_id + self.restore_point_in_time = restore_point_in_time + self.create_mode = 'PointInTimeRestore' diff --git a/src/rdbms/azext_rdbms/mysql/models/server_py3.py b/src/rdbms/azext_rdbms/mysql/models/server_py3.py new file mode 100644 index 00000000000..c31b74ba064 --- /dev/null +++ b/src/rdbms/azext_rdbms/mysql/models/server_py3.py @@ -0,0 +1,91 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .tracked_resource import TrackedResource + + +class Server(TrackedResource): + """Represents a server. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Required. The location the resource resides in. + :type location: str + :param tags: Application-specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :param sku: The SKU (pricing tier) of the server. + :type sku: ~azure.mgmt.rdbms.mysql.models.Sku + :param administrator_login: The administrator's login name of a server. + Can only be specified when the server is being created (and is required + for creation). + :type administrator_login: str + :param version: Server version. Possible values include: '5.6', '5.7' + :type version: str or ~azure.mgmt.rdbms.mysql.models.ServerVersion + :param ssl_enforcement: Enable ssl enforcement or not when connect to + server. Possible values include: 'Enabled', 'Disabled' + :type ssl_enforcement: str or + ~azure.mgmt.rdbms.mysql.models.SslEnforcementEnum + :param user_visible_state: A state of a server that is visible to user. + Possible values include: 'Ready', 'Dropping', 'Disabled' + :type user_visible_state: str or + ~azure.mgmt.rdbms.mysql.models.ServerState + :param fully_qualified_domain_name: The fully qualified domain name of a + server. + :type fully_qualified_domain_name: str + :param earliest_restore_date: Earliest restore point creation time + (ISO8601 format) + :type earliest_restore_date: datetime + :param storage_profile: Storage profile of a server. + :type storage_profile: ~azure.mgmt.rdbms.mysql.models.StorageProfile + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'Sku'}, + 'administrator_login': {'key': 'properties.administratorLogin', 'type': 'str'}, + 'version': {'key': 'properties.version', 'type': 'str'}, + 'ssl_enforcement': {'key': 'properties.sslEnforcement', 'type': 'SslEnforcementEnum'}, + 'user_visible_state': {'key': 'properties.userVisibleState', 'type': 'str'}, + 'fully_qualified_domain_name': {'key': 'properties.fullyQualifiedDomainName', 'type': 'str'}, + 'earliest_restore_date': {'key': 'properties.earliestRestoreDate', 'type': 'iso-8601'}, + 'storage_profile': {'key': 'properties.storageProfile', 'type': 'StorageProfile'}, + } + + def __init__(self, *, location: str, tags=None, sku=None, administrator_login: str=None, version=None, ssl_enforcement=None, user_visible_state=None, fully_qualified_domain_name: str=None, earliest_restore_date=None, storage_profile=None, **kwargs) -> None: + super(Server, self).__init__(location=location, tags=tags, **kwargs) + self.sku = sku + self.administrator_login = administrator_login + self.version = version + self.ssl_enforcement = ssl_enforcement + self.user_visible_state = user_visible_state + self.fully_qualified_domain_name = fully_qualified_domain_name + self.earliest_restore_date = earliest_restore_date + self.storage_profile = storage_profile diff --git a/src/rdbms/azext_rdbms/mysql/models/server_update_parameters.py b/src/rdbms/azext_rdbms/mysql/models/server_update_parameters.py index 5da1465629f..08a3d3dbc8e 100644 --- a/src/rdbms/azext_rdbms/mysql/models/server_update_parameters.py +++ b/src/rdbms/azext_rdbms/mysql/models/server_update_parameters.py @@ -42,11 +42,11 @@ class ServerUpdateParameters(Model): 'tags': {'key': 'tags', 'type': '{str}'}, } - def __init__(self, sku=None, storage_profile=None, administrator_login_password=None, version=None, ssl_enforcement=None, tags=None): - super(ServerUpdateParameters, self).__init__() - self.sku = sku - self.storage_profile = storage_profile - self.administrator_login_password = administrator_login_password - self.version = version - self.ssl_enforcement = ssl_enforcement - self.tags = tags + def __init__(self, **kwargs): + super(ServerUpdateParameters, self).__init__(**kwargs) + self.sku = kwargs.get('sku', None) + self.storage_profile = kwargs.get('storage_profile', None) + self.administrator_login_password = kwargs.get('administrator_login_password', None) + self.version = kwargs.get('version', None) + self.ssl_enforcement = kwargs.get('ssl_enforcement', None) + self.tags = kwargs.get('tags', None) diff --git a/src/rdbms/azext_rdbms/mysql/models/server_update_parameters_py3.py b/src/rdbms/azext_rdbms/mysql/models/server_update_parameters_py3.py new file mode 100644 index 00000000000..4d06bdc1e3c --- /dev/null +++ b/src/rdbms/azext_rdbms/mysql/models/server_update_parameters_py3.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ServerUpdateParameters(Model): + """Parameters allowd to update for a server. + + :param sku: The SKU (pricing tier) of the server. + :type sku: ~azure.mgmt.rdbms.mysql.models.Sku + :param storage_profile: Storage profile of a server. + :type storage_profile: ~azure.mgmt.rdbms.mysql.models.StorageProfile + :param administrator_login_password: The password of the administrator + login. + :type administrator_login_password: str + :param version: The version of a server. Possible values include: '5.6', + '5.7' + :type version: str or ~azure.mgmt.rdbms.mysql.models.ServerVersion + :param ssl_enforcement: Enable ssl enforcement or not when connect to + server. Possible values include: 'Enabled', 'Disabled' + :type ssl_enforcement: str or + ~azure.mgmt.rdbms.mysql.models.SslEnforcementEnum + :param tags: Application-specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'sku': {'key': 'sku', 'type': 'Sku'}, + 'storage_profile': {'key': 'properties.storageProfile', 'type': 'StorageProfile'}, + 'administrator_login_password': {'key': 'properties.administratorLoginPassword', 'type': 'str'}, + 'version': {'key': 'properties.version', 'type': 'str'}, + 'ssl_enforcement': {'key': 'properties.sslEnforcement', 'type': 'SslEnforcementEnum'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, sku=None, storage_profile=None, administrator_login_password: str=None, version=None, ssl_enforcement=None, tags=None, **kwargs) -> None: + super(ServerUpdateParameters, self).__init__(**kwargs) + self.sku = sku + self.storage_profile = storage_profile + self.administrator_login_password = administrator_login_password + self.version = version + self.ssl_enforcement = ssl_enforcement + self.tags = tags diff --git a/src/rdbms/azext_rdbms/mysql/models/sku.py b/src/rdbms/azext_rdbms/mysql/models/sku.py index 480a830a498..968ef19a2e2 100644 --- a/src/rdbms/azext_rdbms/mysql/models/sku.py +++ b/src/rdbms/azext_rdbms/mysql/models/sku.py @@ -42,10 +42,10 @@ class Sku(Model): 'family': {'key': 'family', 'type': 'str'}, } - def __init__(self, name=None, tier=None, capacity=None, size=None, family=None): - super(Sku, self).__init__() - self.name = name - self.tier = tier - self.capacity = capacity - self.size = size - self.family = family + def __init__(self, **kwargs): + super(Sku, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.tier = kwargs.get('tier', None) + self.capacity = kwargs.get('capacity', None) + self.size = kwargs.get('size', None) + self.family = kwargs.get('family', None) diff --git a/src/rdbms/azext_rdbms/mysql/models/sku_py3.py b/src/rdbms/azext_rdbms/mysql/models/sku_py3.py new file mode 100644 index 00000000000..f7c0fbf90ed --- /dev/null +++ b/src/rdbms/azext_rdbms/mysql/models/sku_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Sku(Model): + """Billing information related properties of a server. + + :param name: The name of the sku, typically, tier + family + cores, e.g. + B_Gen4_1, GP_Gen5_8. + :type name: str + :param tier: The tier of the particular SKU, e.g. Basic. Possible values + include: 'Basic', 'GeneralPurpose', 'MemoryOptimized' + :type tier: str or ~azure.mgmt.rdbms.mysql.models.SkuTier + :param capacity: The scale up/out capacity, representing server's compute + units. + :type capacity: int + :param size: The size code, to be interpreted by resource as appropriate. + :type size: str + :param family: The family of hardware. + :type family: str + """ + + _validation = { + 'capacity': {'minimum': 0}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + 'capacity': {'key': 'capacity', 'type': 'int'}, + 'size': {'key': 'size', 'type': 'str'}, + 'family': {'key': 'family', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, tier=None, capacity: int=None, size: str=None, family: str=None, **kwargs) -> None: + super(Sku, self).__init__(**kwargs) + self.name = name + self.tier = tier + self.capacity = capacity + self.size = size + self.family = family diff --git a/src/rdbms/azext_rdbms/mysql/models/storage_profile.py b/src/rdbms/azext_rdbms/mysql/models/storage_profile.py index 1bc8092ae4b..c40172fb058 100644 --- a/src/rdbms/azext_rdbms/mysql/models/storage_profile.py +++ b/src/rdbms/azext_rdbms/mysql/models/storage_profile.py @@ -31,8 +31,8 @@ class StorageProfile(Model): 'storage_mb': {'key': 'storageMB', 'type': 'int'}, } - def __init__(self, backup_retention_days=None, geo_redundant_backup=None, storage_mb=None): - super(StorageProfile, self).__init__() - self.backup_retention_days = backup_retention_days - self.geo_redundant_backup = geo_redundant_backup - self.storage_mb = storage_mb + def __init__(self, **kwargs): + super(StorageProfile, self).__init__(**kwargs) + self.backup_retention_days = kwargs.get('backup_retention_days', None) + self.geo_redundant_backup = kwargs.get('geo_redundant_backup', None) + self.storage_mb = kwargs.get('storage_mb', None) diff --git a/src/rdbms/azext_rdbms/mysql/models/storage_profile_py3.py b/src/rdbms/azext_rdbms/mysql/models/storage_profile_py3.py new file mode 100644 index 00000000000..8a50588949d --- /dev/null +++ b/src/rdbms/azext_rdbms/mysql/models/storage_profile_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageProfile(Model): + """Storage Profile properties of a server. + + :param backup_retention_days: Backup retention days for the server. + :type backup_retention_days: int + :param geo_redundant_backup: Enable Geo-redundant or not for server + backup. Possible values include: 'Enabled', 'Disabled' + :type geo_redundant_backup: str or + ~azure.mgmt.rdbms.mysql.models.GeoRedundantBackup + :param storage_mb: Max storage allowed for a server. + :type storage_mb: int + """ + + _attribute_map = { + 'backup_retention_days': {'key': 'backupRetentionDays', 'type': 'int'}, + 'geo_redundant_backup': {'key': 'geoRedundantBackup', 'type': 'str'}, + 'storage_mb': {'key': 'storageMB', 'type': 'int'}, + } + + def __init__(self, *, backup_retention_days: int=None, geo_redundant_backup=None, storage_mb: int=None, **kwargs) -> None: + super(StorageProfile, self).__init__(**kwargs) + self.backup_retention_days = backup_retention_days + self.geo_redundant_backup = geo_redundant_backup + self.storage_mb = storage_mb diff --git a/src/rdbms/azext_rdbms/mysql/models/tracked_resource.py b/src/rdbms/azext_rdbms/mysql/models/tracked_resource.py index 0d199e6f6f9..67e93dd79e7 100644 --- a/src/rdbms/azext_rdbms/mysql/models/tracked_resource.py +++ b/src/rdbms/azext_rdbms/mysql/models/tracked_resource.py @@ -18,13 +18,15 @@ class TrackedResource(ProxyResource): Variables are only populated by the server, and will be ignored when sending a request. + All required parameters must be populated in order to send to Azure. + :ivar id: Resource ID :vartype id: str :ivar name: Resource name. :vartype name: str :ivar type: Resource type. :vartype type: str - :param location: The location the resource resides in. + :param location: Required. The location the resource resides in. :type location: str :param tags: Application-specific metadata in the form of key-value pairs. :type tags: dict[str, str] @@ -45,7 +47,7 @@ class TrackedResource(ProxyResource): 'tags': {'key': 'tags', 'type': '{str}'}, } - def __init__(self, location, tags=None): - super(TrackedResource, self).__init__() - self.location = location - self.tags = tags + def __init__(self, **kwargs): + super(TrackedResource, self).__init__(**kwargs) + self.location = kwargs.get('location', None) + self.tags = kwargs.get('tags', None) diff --git a/src/rdbms/azext_rdbms/mysql/models/tracked_resource_py3.py b/src/rdbms/azext_rdbms/mysql/models/tracked_resource_py3.py new file mode 100644 index 00000000000..6db5a5b1b40 --- /dev/null +++ b/src/rdbms/azext_rdbms/mysql/models/tracked_resource_py3.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource import ProxyResource + + +class TrackedResource(ProxyResource): + """Resource properties including location and tags for track resources. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Required. The location the resource resides in. + :type location: str + :param tags: Application-specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, location: str, tags=None, **kwargs) -> None: + super(TrackedResource, self).__init__(, **kwargs) + self.location = location + self.tags = tags diff --git a/src/rdbms/azext_rdbms/mysql/operations/configurations_operations.py b/src/rdbms/azext_rdbms/mysql/operations/configurations_operations.py index 7dfdb70fc1d..b71a938d376 100644 --- a/src/rdbms/azext_rdbms/mysql/operations/configurations_operations.py +++ b/src/rdbms/azext_rdbms/mysql/operations/configurations_operations.py @@ -12,8 +12,8 @@ import uuid from msrest.pipeline import ClientRawResponse from msrestazure.azure_exceptions import CloudError -from msrest.exceptions import DeserializationError -from msrestazure.azure_operation import AzureOperationPoller +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling from .. import models @@ -93,7 +93,7 @@ def _create_or_update_initial( return deserialized def create_or_update( - self, resource_group_name, server_name, configuration_name, value=None, source=None, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, server_name, configuration_name, value=None, source=None, custom_headers=None, raw=False, polling=True, **operation_config): """Updates a configuration of a server. :param resource_group_name: The name of the resource group that @@ -109,13 +109,16 @@ def create_or_update( :param source: Source of the configuration. :type source: str :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns - Configuration or ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Configuration or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.rdbms.mysql.models.Configuration] - or ~msrest.pipeline.ClientRawResponse + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.rdbms.mysql.models.Configuration]] :raises: :class:`CloudError` """ raw_result = self._create_or_update_initial( @@ -128,30 +131,8 @@ def create_or_update( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - deserialized = self._deserialize('Configuration', response) if raw: @@ -160,12 +141,13 @@ def get_long_running_output(response): return deserialized - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/configurations/{configurationName}'} def get( diff --git a/src/rdbms/azext_rdbms/mysql/operations/databases_operations.py b/src/rdbms/azext_rdbms/mysql/operations/databases_operations.py index 5d294b9de38..7746deca34c 100644 --- a/src/rdbms/azext_rdbms/mysql/operations/databases_operations.py +++ b/src/rdbms/azext_rdbms/mysql/operations/databases_operations.py @@ -12,8 +12,8 @@ import uuid from msrest.pipeline import ClientRawResponse from msrestazure.azure_exceptions import CloudError -from msrest.exceptions import DeserializationError -from msrestazure.azure_operation import AzureOperationPoller +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling from .. import models @@ -95,7 +95,7 @@ def _create_or_update_initial( return deserialized def create_or_update( - self, resource_group_name, server_name, database_name, charset=None, collation=None, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, server_name, database_name, charset=None, collation=None, custom_headers=None, raw=False, polling=True, **operation_config): """Creates a new database or updates an existing database. :param resource_group_name: The name of the resource group that @@ -111,13 +111,16 @@ def create_or_update( :param collation: The collation of the database. :type collation: str :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns Database or - ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Database or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.rdbms.mysql.models.Database] - or ~msrest.pipeline.ClientRawResponse + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.rdbms.mysql.models.Database]] :raises: :class:`CloudError` """ raw_result = self._create_or_update_initial( @@ -130,30 +133,8 @@ def create_or_update( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200, 201, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - deserialized = self._deserialize('Database', response) if raw: @@ -162,12 +143,13 @@ def get_long_running_output(response): return deserialized - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/databases/{databaseName}'} @@ -211,7 +193,7 @@ def _delete_initial( return client_raw_response def delete( - self, resource_group_name, server_name, database_name, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, server_name, database_name, custom_headers=None, raw=False, polling=True, **operation_config): """Deletes a database. :param resource_group_name: The name of the resource group that @@ -223,12 +205,14 @@ def delete( :param database_name: The name of the database. :type database_name: str :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns None or - ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or - ~msrest.pipeline.ClientRawResponse + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] :raises: :class:`CloudError` """ raw_result = self._delete_initial( @@ -239,40 +223,19 @@ def delete( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200, 202, 204]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/databases/{databaseName}'} def get( diff --git a/src/rdbms/azext_rdbms/mysql/operations/firewall_rules_operations.py b/src/rdbms/azext_rdbms/mysql/operations/firewall_rules_operations.py index 3d8aa4f4e2f..4dc1bb68119 100644 --- a/src/rdbms/azext_rdbms/mysql/operations/firewall_rules_operations.py +++ b/src/rdbms/azext_rdbms/mysql/operations/firewall_rules_operations.py @@ -12,8 +12,8 @@ import uuid from msrest.pipeline import ClientRawResponse from msrestazure.azure_exceptions import CloudError -from msrest.exceptions import DeserializationError -from msrestazure.azure_operation import AzureOperationPoller +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling from .. import models @@ -95,7 +95,7 @@ def _create_or_update_initial( return deserialized def create_or_update( - self, resource_group_name, server_name, firewall_rule_name, start_ip_address, end_ip_address, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, server_name, firewall_rule_name, start_ip_address, end_ip_address, custom_headers=None, raw=False, polling=True, **operation_config): """Creates a new firewall rule or updates an existing firewall rule. :param resource_group_name: The name of the resource group that @@ -113,13 +113,16 @@ def create_or_update( Must be IPv4 format. :type end_ip_address: str :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns FirewallRule - or ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns FirewallRule or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.rdbms.mysql.models.FirewallRule] - or ~msrest.pipeline.ClientRawResponse + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.rdbms.mysql.models.FirewallRule]] :raises: :class:`CloudError` """ raw_result = self._create_or_update_initial( @@ -132,30 +135,8 @@ def create_or_update( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200, 201, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - deserialized = self._deserialize('FirewallRule', response) if raw: @@ -164,12 +145,13 @@ def get_long_running_output(response): return deserialized - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/firewallRules/{firewallRuleName}'} @@ -213,7 +195,7 @@ def _delete_initial( return client_raw_response def delete( - self, resource_group_name, server_name, firewall_rule_name, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, server_name, firewall_rule_name, custom_headers=None, raw=False, polling=True, **operation_config): """Deletes a server firewall rule. :param resource_group_name: The name of the resource group that @@ -225,12 +207,14 @@ def delete( :param firewall_rule_name: The name of the server firewall rule. :type firewall_rule_name: str :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns None or - ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or - ~msrest.pipeline.ClientRawResponse + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] :raises: :class:`CloudError` """ raw_result = self._delete_initial( @@ -241,40 +225,19 @@ def delete( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200, 202, 204]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/firewallRules/{firewallRuleName}'} def get( diff --git a/src/rdbms/azext_rdbms/mysql/operations/servers_operations.py b/src/rdbms/azext_rdbms/mysql/operations/servers_operations.py index 6679e48634d..46d3cb5a5d7 100644 --- a/src/rdbms/azext_rdbms/mysql/operations/servers_operations.py +++ b/src/rdbms/azext_rdbms/mysql/operations/servers_operations.py @@ -12,8 +12,8 @@ import uuid from msrest.pipeline import ClientRawResponse from msrestazure.azure_exceptions import CloudError -from msrest.exceptions import DeserializationError -from msrestazure.azure_operation import AzureOperationPoller +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling from .. import models @@ -92,7 +92,7 @@ def _create_initial( return deserialized def create( - self, resource_group_name, server_name, parameters, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, server_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): """Creates a new server or updates an existing server. The update action will overwrite the existing server. @@ -106,13 +106,16 @@ def create( server. :type parameters: ~azure.mgmt.rdbms.mysql.models.ServerForCreate :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns Server or - ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Server or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.rdbms.mysql.models.Server] - or ~msrest.pipeline.ClientRawResponse + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.rdbms.mysql.models.Server]] :raises: :class:`CloudError` """ raw_result = self._create_initial( @@ -123,30 +126,8 @@ def create( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200, 201, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - deserialized = self._deserialize('Server', response) if raw: @@ -155,12 +136,13 @@ def get_long_running_output(response): return deserialized - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) create.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}'} @@ -214,7 +196,7 @@ def _update_initial( return deserialized def update( - self, resource_group_name, server_name, parameters, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, server_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): """Updates an existing server. The request body can contain one to many of the properties present in the normal server definition. @@ -228,13 +210,16 @@ def update( :type parameters: ~azure.mgmt.rdbms.mysql.models.ServerUpdateParameters :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns Server or - ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Server or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.rdbms.mysql.models.Server] - or ~msrest.pipeline.ClientRawResponse + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.rdbms.mysql.models.Server]] :raises: :class:`CloudError` """ raw_result = self._update_initial( @@ -245,30 +230,8 @@ def update( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - deserialized = self._deserialize('Server', response) if raw: @@ -277,12 +240,13 @@ def get_long_running_output(response): return deserialized - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}'} @@ -325,7 +289,7 @@ def _delete_initial( return client_raw_response def delete( - self, resource_group_name, server_name, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, server_name, custom_headers=None, raw=False, polling=True, **operation_config): """Deletes a server. :param resource_group_name: The name of the resource group that @@ -335,12 +299,14 @@ def delete( :param server_name: The name of the server. :type server_name: str :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns None or - ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or - ~msrest.pipeline.ClientRawResponse + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] :raises: :class:`CloudError` """ raw_result = self._delete_initial( @@ -350,40 +316,19 @@ def delete( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200, 202, 204]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}'} def get( diff --git a/src/rdbms/azext_rdbms/mysql/version.py b/src/rdbms/azext_rdbms/mysql/version.py index fb0159ed93d..220ef6ab5ec 100644 --- a/src/rdbms/azext_rdbms/mysql/version.py +++ b/src/rdbms/azext_rdbms/mysql/version.py @@ -9,4 +9,4 @@ # regenerated. # -------------------------------------------------------------------------- -VERSION = "0.1.0" +VERSION = "2017-12-01" diff --git a/src/rdbms/azext_rdbms/postgresql/models/__init__.py b/src/rdbms/azext_rdbms/postgresql/models/__init__.py index 6f36d52a362..14ff84b0f76 100644 --- a/src/rdbms/azext_rdbms/postgresql/models/__init__.py +++ b/src/rdbms/azext_rdbms/postgresql/models/__init__.py @@ -9,27 +9,52 @@ # regenerated. # -------------------------------------------------------------------------- -from .proxy_resource import ProxyResource -from .tracked_resource import TrackedResource -from .storage_profile import StorageProfile -from .server_properties_for_create import ServerPropertiesForCreate -from .server_properties_for_default_create import ServerPropertiesForDefaultCreate -from .server_properties_for_restore import ServerPropertiesForRestore -from .sku import Sku -from .server import Server -from .server_for_create import ServerForCreate -from .server_update_parameters import ServerUpdateParameters -from .firewall_rule import FirewallRule -from .database import Database -from .configuration import Configuration -from .operation_display import OperationDisplay -from .operation import Operation -from .operation_list_result import OperationListResult -from .log_file import LogFile -from .performance_tier_service_level_objectives import PerformanceTierServiceLevelObjectives -from .performance_tier_properties import PerformanceTierProperties -from .name_availability_request import NameAvailabilityRequest -from .name_availability import NameAvailability +try: + from .proxy_resource_py3 import ProxyResource + from .tracked_resource_py3 import TrackedResource + from .storage_profile_py3 import StorageProfile + from .server_properties_for_create_py3 import ServerPropertiesForCreate + from .server_properties_for_default_create_py3 import ServerPropertiesForDefaultCreate + from .server_properties_for_restore_py3 import ServerPropertiesForRestore + from .server_properties_for_geo_restore_py3 import ServerPropertiesForGeoRestore + from .sku_py3 import Sku + from .server_py3 import Server + from .server_for_create_py3 import ServerForCreate + from .server_update_parameters_py3 import ServerUpdateParameters + from .firewall_rule_py3 import FirewallRule + from .database_py3 import Database + from .configuration_py3 import Configuration + from .operation_display_py3 import OperationDisplay + from .operation_py3 import Operation + from .operation_list_result_py3 import OperationListResult + from .log_file_py3 import LogFile + from .performance_tier_service_level_objectives_py3 import PerformanceTierServiceLevelObjectives + from .performance_tier_properties_py3 import PerformanceTierProperties + from .name_availability_request_py3 import NameAvailabilityRequest + from .name_availability_py3 import NameAvailability +except (SyntaxError, ImportError): + from .proxy_resource import ProxyResource + from .tracked_resource import TrackedResource + from .storage_profile import StorageProfile + from .server_properties_for_create import ServerPropertiesForCreate + from .server_properties_for_default_create import ServerPropertiesForDefaultCreate + from .server_properties_for_restore import ServerPropertiesForRestore + from .server_properties_for_geo_restore import ServerPropertiesForGeoRestore + from .sku import Sku + from .server import Server + from .server_for_create import ServerForCreate + from .server_update_parameters import ServerUpdateParameters + from .firewall_rule import FirewallRule + from .database import Database + from .configuration import Configuration + from .operation_display import OperationDisplay + from .operation import Operation + from .operation_list_result import OperationListResult + from .log_file import LogFile + from .performance_tier_service_level_objectives import PerformanceTierServiceLevelObjectives + from .performance_tier_properties import PerformanceTierProperties + from .name_availability_request import NameAvailabilityRequest + from .name_availability import NameAvailability from .server_paged import ServerPaged from .firewall_rule_paged import FirewallRulePaged from .database_paged import DatabasePaged @@ -52,6 +77,7 @@ 'ServerPropertiesForCreate', 'ServerPropertiesForDefaultCreate', 'ServerPropertiesForRestore', + 'ServerPropertiesForGeoRestore', 'Sku', 'Server', 'ServerForCreate', diff --git a/src/rdbms/azext_rdbms/postgresql/models/configuration.py b/src/rdbms/azext_rdbms/postgresql/models/configuration.py index 958b4df2237..8d95fc4a0f2 100644 --- a/src/rdbms/azext_rdbms/postgresql/models/configuration.py +++ b/src/rdbms/azext_rdbms/postgresql/models/configuration.py @@ -60,11 +60,11 @@ class Configuration(ProxyResource): 'source': {'key': 'properties.source', 'type': 'str'}, } - def __init__(self, value=None, source=None): - super(Configuration, self).__init__() - self.value = value + def __init__(self, **kwargs): + super(Configuration, self).__init__(**kwargs) + self.value = kwargs.get('value', None) self.description = None self.default_value = None self.data_type = None self.allowed_values = None - self.source = source + self.source = kwargs.get('source', None) diff --git a/src/rdbms/azext_rdbms/postgresql/models/configuration_py3.py b/src/rdbms/azext_rdbms/postgresql/models/configuration_py3.py new file mode 100644 index 00000000000..9ad3350cf61 --- /dev/null +++ b/src/rdbms/azext_rdbms/postgresql/models/configuration_py3.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource import ProxyResource + + +class Configuration(ProxyResource): + """Represents a Configuration. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param value: Value of the configuration. + :type value: str + :ivar description: Description of the configuration. + :vartype description: str + :ivar default_value: Default value of the configuration. + :vartype default_value: str + :ivar data_type: Data type of the configuration. + :vartype data_type: str + :ivar allowed_values: Allowed values of the configuration. + :vartype allowed_values: str + :param source: Source of the configuration. + :type source: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'description': {'readonly': True}, + 'default_value': {'readonly': True}, + 'data_type': {'readonly': True}, + 'allowed_values': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'value': {'key': 'properties.value', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'default_value': {'key': 'properties.defaultValue', 'type': 'str'}, + 'data_type': {'key': 'properties.dataType', 'type': 'str'}, + 'allowed_values': {'key': 'properties.allowedValues', 'type': 'str'}, + 'source': {'key': 'properties.source', 'type': 'str'}, + } + + def __init__(self, *, value: str=None, source: str=None, **kwargs) -> None: + super(Configuration, self).__init__(, **kwargs) + self.value = value + self.description = None + self.default_value = None + self.data_type = None + self.allowed_values = None + self.source = source diff --git a/src/rdbms/azext_rdbms/postgresql/models/database.py b/src/rdbms/azext_rdbms/postgresql/models/database.py index f4e129302c9..f503efb9fa3 100644 --- a/src/rdbms/azext_rdbms/postgresql/models/database.py +++ b/src/rdbms/azext_rdbms/postgresql/models/database.py @@ -44,7 +44,7 @@ class Database(ProxyResource): 'collation': {'key': 'properties.collation', 'type': 'str'}, } - def __init__(self, charset=None, collation=None): - super(Database, self).__init__() - self.charset = charset - self.collation = collation + def __init__(self, **kwargs): + super(Database, self).__init__(**kwargs) + self.charset = kwargs.get('charset', None) + self.collation = kwargs.get('collation', None) diff --git a/src/rdbms/azext_rdbms/postgresql/models/database_py3.py b/src/rdbms/azext_rdbms/postgresql/models/database_py3.py new file mode 100644 index 00000000000..e7880e928d6 --- /dev/null +++ b/src/rdbms/azext_rdbms/postgresql/models/database_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource import ProxyResource + + +class Database(ProxyResource): + """Represents a Database. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param charset: The charset of the database. + :type charset: str + :param collation: The collation of the database. + :type collation: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'charset': {'key': 'properties.charset', 'type': 'str'}, + 'collation': {'key': 'properties.collation', 'type': 'str'}, + } + + def __init__(self, *, charset: str=None, collation: str=None, **kwargs) -> None: + super(Database, self).__init__(, **kwargs) + self.charset = charset + self.collation = collation diff --git a/src/rdbms/azext_rdbms/postgresql/models/firewall_rule.py b/src/rdbms/azext_rdbms/postgresql/models/firewall_rule.py index ed7b9c13a02..af9a04f835d 100644 --- a/src/rdbms/azext_rdbms/postgresql/models/firewall_rule.py +++ b/src/rdbms/azext_rdbms/postgresql/models/firewall_rule.py @@ -18,17 +18,19 @@ class FirewallRule(ProxyResource): Variables are only populated by the server, and will be ignored when sending a request. + All required parameters must be populated in order to send to Azure. + :ivar id: Resource ID :vartype id: str :ivar name: Resource name. :vartype name: str :ivar type: Resource type. :vartype type: str - :param start_ip_address: The start IP address of the server firewall rule. - Must be IPv4 format. + :param start_ip_address: Required. The start IP address of the server + firewall rule. Must be IPv4 format. :type start_ip_address: str - :param end_ip_address: The end IP address of the server firewall rule. - Must be IPv4 format. + :param end_ip_address: Required. The end IP address of the server firewall + rule. Must be IPv4 format. :type end_ip_address: str """ @@ -48,7 +50,7 @@ class FirewallRule(ProxyResource): 'end_ip_address': {'key': 'properties.endIpAddress', 'type': 'str'}, } - def __init__(self, start_ip_address, end_ip_address): - super(FirewallRule, self).__init__() - self.start_ip_address = start_ip_address - self.end_ip_address = end_ip_address + def __init__(self, **kwargs): + super(FirewallRule, self).__init__(**kwargs) + self.start_ip_address = kwargs.get('start_ip_address', None) + self.end_ip_address = kwargs.get('end_ip_address', None) diff --git a/src/rdbms/azext_rdbms/postgresql/models/firewall_rule_py3.py b/src/rdbms/azext_rdbms/postgresql/models/firewall_rule_py3.py new file mode 100644 index 00000000000..2891333362d --- /dev/null +++ b/src/rdbms/azext_rdbms/postgresql/models/firewall_rule_py3.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource import ProxyResource + + +class FirewallRule(ProxyResource): + """Represents a server firewall rule. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param start_ip_address: Required. The start IP address of the server + firewall rule. Must be IPv4 format. + :type start_ip_address: str + :param end_ip_address: Required. The end IP address of the server firewall + rule. Must be IPv4 format. + :type end_ip_address: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'start_ip_address': {'required': True, 'pattern': r'^(([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])$'}, + 'end_ip_address': {'required': True, 'pattern': r'^(([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])$'}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'start_ip_address': {'key': 'properties.startIpAddress', 'type': 'str'}, + 'end_ip_address': {'key': 'properties.endIpAddress', 'type': 'str'}, + } + + def __init__(self, *, start_ip_address: str, end_ip_address: str, **kwargs) -> None: + super(FirewallRule, self).__init__(, **kwargs) + self.start_ip_address = start_ip_address + self.end_ip_address = end_ip_address diff --git a/src/rdbms/azext_rdbms/postgresql/models/log_file.py b/src/rdbms/azext_rdbms/postgresql/models/log_file.py index 56ba143dae2..214dae4dbee 100644 --- a/src/rdbms/azext_rdbms/postgresql/models/log_file.py +++ b/src/rdbms/azext_rdbms/postgresql/models/log_file.py @@ -55,10 +55,10 @@ class LogFile(ProxyResource): 'url': {'key': 'properties.url', 'type': 'str'}, } - def __init__(self, size_in_kb=None, log_file_type=None, url=None): - super(LogFile, self).__init__() - self.size_in_kb = size_in_kb + def __init__(self, **kwargs): + super(LogFile, self).__init__(**kwargs) + self.size_in_kb = kwargs.get('size_in_kb', None) self.created_time = None self.last_modified_time = None - self.log_file_type = log_file_type - self.url = url + self.log_file_type = kwargs.get('log_file_type', None) + self.url = kwargs.get('url', None) diff --git a/src/rdbms/azext_rdbms/postgresql/models/log_file_py3.py b/src/rdbms/azext_rdbms/postgresql/models/log_file_py3.py new file mode 100644 index 00000000000..060afec5668 --- /dev/null +++ b/src/rdbms/azext_rdbms/postgresql/models/log_file_py3.py @@ -0,0 +1,64 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource import ProxyResource + + +class LogFile(ProxyResource): + """Represents a log file. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param size_in_kb: Size of the log file. + :type size_in_kb: long + :ivar created_time: Creation timestamp of the log file. + :vartype created_time: datetime + :ivar last_modified_time: Last modified timestamp of the log file. + :vartype last_modified_time: datetime + :param log_file_type: Type of the log file. + :type log_file_type: str + :param url: The url to download the log file from. + :type url: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'created_time': {'readonly': True}, + 'last_modified_time': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'size_in_kb': {'key': 'properties.sizeInKB', 'type': 'long'}, + 'created_time': {'key': 'properties.createdTime', 'type': 'iso-8601'}, + 'last_modified_time': {'key': 'properties.lastModifiedTime', 'type': 'iso-8601'}, + 'log_file_type': {'key': 'properties.type', 'type': 'str'}, + 'url': {'key': 'properties.url', 'type': 'str'}, + } + + def __init__(self, *, size_in_kb: int=None, log_file_type: str=None, url: str=None, **kwargs) -> None: + super(LogFile, self).__init__(, **kwargs) + self.size_in_kb = size_in_kb + self.created_time = None + self.last_modified_time = None + self.log_file_type = log_file_type + self.url = url diff --git a/src/rdbms/azext_rdbms/postgresql/models/name_availability.py b/src/rdbms/azext_rdbms/postgresql/models/name_availability.py index b7759d8d472..327a74ca8a4 100644 --- a/src/rdbms/azext_rdbms/postgresql/models/name_availability.py +++ b/src/rdbms/azext_rdbms/postgresql/models/name_availability.py @@ -29,8 +29,8 @@ class NameAvailability(Model): 'reason': {'key': 'reason', 'type': 'str'}, } - def __init__(self, message=None, name_available=None, reason=None): - super(NameAvailability, self).__init__() - self.message = message - self.name_available = name_available - self.reason = reason + def __init__(self, **kwargs): + super(NameAvailability, self).__init__(**kwargs) + self.message = kwargs.get('message', None) + self.name_available = kwargs.get('name_available', None) + self.reason = kwargs.get('reason', None) diff --git a/src/rdbms/azext_rdbms/postgresql/models/name_availability_py3.py b/src/rdbms/azext_rdbms/postgresql/models/name_availability_py3.py new file mode 100644 index 00000000000..f7b52a09e29 --- /dev/null +++ b/src/rdbms/azext_rdbms/postgresql/models/name_availability_py3.py @@ -0,0 +1,36 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NameAvailability(Model): + """Represents a resource name availability. + + :param message: Error Message. + :type message: str + :param name_available: Indicates whether the resource name is available. + :type name_available: bool + :param reason: Reason for name being unavailable. + :type reason: str + """ + + _attribute_map = { + 'message': {'key': 'message', 'type': 'str'}, + 'name_available': {'key': 'nameAvailable', 'type': 'bool'}, + 'reason': {'key': 'reason', 'type': 'str'}, + } + + def __init__(self, *, message: str=None, name_available: bool=None, reason: str=None, **kwargs) -> None: + super(NameAvailability, self).__init__(**kwargs) + self.message = message + self.name_available = name_available + self.reason = reason diff --git a/src/rdbms/azext_rdbms/postgresql/models/name_availability_request.py b/src/rdbms/azext_rdbms/postgresql/models/name_availability_request.py index 715b87ea367..33cac8ab530 100644 --- a/src/rdbms/azext_rdbms/postgresql/models/name_availability_request.py +++ b/src/rdbms/azext_rdbms/postgresql/models/name_availability_request.py @@ -15,7 +15,9 @@ class NameAvailabilityRequest(Model): """Request from client to check resource name availability. - :param name: Resource name to verify. + All required parameters must be populated in order to send to Azure. + + :param name: Required. Resource name to verify. :type name: str :param type: Resource type used for verification. :type type: str @@ -30,7 +32,7 @@ class NameAvailabilityRequest(Model): 'type': {'key': 'type', 'type': 'str'}, } - def __init__(self, name, type=None): - super(NameAvailabilityRequest, self).__init__() - self.name = name - self.type = type + def __init__(self, **kwargs): + super(NameAvailabilityRequest, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.type = kwargs.get('type', None) diff --git a/src/rdbms/azext_rdbms/postgresql/models/name_availability_request_py3.py b/src/rdbms/azext_rdbms/postgresql/models/name_availability_request_py3.py new file mode 100644 index 00000000000..ec45bb2e473 --- /dev/null +++ b/src/rdbms/azext_rdbms/postgresql/models/name_availability_request_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class NameAvailabilityRequest(Model): + """Request from client to check resource name availability. + + All required parameters must be populated in order to send to Azure. + + :param name: Required. Resource name to verify. + :type name: str + :param type: Resource type used for verification. + :type type: str + """ + + _validation = { + 'name': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, name: str, type: str=None, **kwargs) -> None: + super(NameAvailabilityRequest, self).__init__(**kwargs) + self.name = name + self.type = type diff --git a/src/rdbms/azext_rdbms/postgresql/models/operation.py b/src/rdbms/azext_rdbms/postgresql/models/operation.py index c0ad896a743..6e54cd3c45b 100644 --- a/src/rdbms/azext_rdbms/postgresql/models/operation.py +++ b/src/rdbms/azext_rdbms/postgresql/models/operation.py @@ -46,8 +46,8 @@ class Operation(Model): 'properties': {'key': 'properties', 'type': '{object}'}, } - def __init__(self): - super(Operation, self).__init__() + def __init__(self, **kwargs): + super(Operation, self).__init__(**kwargs) self.name = None self.display = None self.origin = None diff --git a/src/rdbms/azext_rdbms/postgresql/models/operation_display.py b/src/rdbms/azext_rdbms/postgresql/models/operation_display.py index 66b7f736d29..98314a2871d 100644 --- a/src/rdbms/azext_rdbms/postgresql/models/operation_display.py +++ b/src/rdbms/azext_rdbms/postgresql/models/operation_display.py @@ -42,8 +42,8 @@ class OperationDisplay(Model): 'description': {'key': 'description', 'type': 'str'}, } - def __init__(self): - super(OperationDisplay, self).__init__() + def __init__(self, **kwargs): + super(OperationDisplay, self).__init__(**kwargs) self.provider = None self.resource = None self.operation = None diff --git a/src/rdbms/azext_rdbms/postgresql/models/operation_display_py3.py b/src/rdbms/azext_rdbms/postgresql/models/operation_display_py3.py new file mode 100644 index 00000000000..9b5a77c699a --- /dev/null +++ b/src/rdbms/azext_rdbms/postgresql/models/operation_display_py3.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationDisplay(Model): + """Display metadata associated with the operation. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar provider: Operation resource provider name. + :vartype provider: str + :ivar resource: Resource on which the operation is performed. + :vartype resource: str + :ivar operation: Localized friendly name for the operation. + :vartype operation: str + :ivar description: Operation description. + :vartype description: str + """ + + _validation = { + 'provider': {'readonly': True}, + 'resource': {'readonly': True}, + 'operation': {'readonly': True}, + 'description': {'readonly': True}, + } + + _attribute_map = { + 'provider': {'key': 'provider', 'type': 'str'}, + 'resource': {'key': 'resource', 'type': 'str'}, + 'operation': {'key': 'operation', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(OperationDisplay, self).__init__(**kwargs) + self.provider = None + self.resource = None + self.operation = None + self.description = None diff --git a/src/rdbms/azext_rdbms/postgresql/models/operation_list_result.py b/src/rdbms/azext_rdbms/postgresql/models/operation_list_result.py index b6521d80d2b..064d889c587 100644 --- a/src/rdbms/azext_rdbms/postgresql/models/operation_list_result.py +++ b/src/rdbms/azext_rdbms/postgresql/models/operation_list_result.py @@ -23,6 +23,6 @@ class OperationListResult(Model): 'value': {'key': 'value', 'type': '[Operation]'}, } - def __init__(self, value=None): - super(OperationListResult, self).__init__() - self.value = value + def __init__(self, **kwargs): + super(OperationListResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) diff --git a/src/rdbms/azext_rdbms/postgresql/models/operation_list_result_py3.py b/src/rdbms/azext_rdbms/postgresql/models/operation_list_result_py3.py new file mode 100644 index 00000000000..b20d89e4c6e --- /dev/null +++ b/src/rdbms/azext_rdbms/postgresql/models/operation_list_result_py3.py @@ -0,0 +1,28 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class OperationListResult(Model): + """A list of resource provider operations. + + :param value: The list of resource provider operations. + :type value: list[~azure.mgmt.rdbms.postgresql.models.Operation] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[Operation]'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(OperationListResult, self).__init__(**kwargs) + self.value = value diff --git a/src/rdbms/azext_rdbms/postgresql/models/operation_py3.py b/src/rdbms/azext_rdbms/postgresql/models/operation_py3.py new file mode 100644 index 00000000000..bb0791b4a59 --- /dev/null +++ b/src/rdbms/azext_rdbms/postgresql/models/operation_py3.py @@ -0,0 +1,54 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Operation(Model): + """REST API operation definition. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar name: The name of the operation being performed on this particular + object. + :vartype name: str + :ivar display: The localized display information for this particular + operation or action. + :vartype display: ~azure.mgmt.rdbms.postgresql.models.OperationDisplay + :ivar origin: The intended executor of the operation. Possible values + include: 'NotSpecified', 'user', 'system' + :vartype origin: str or + ~azure.mgmt.rdbms.postgresql.models.OperationOrigin + :ivar properties: Additional descriptions for the operation. + :vartype properties: dict[str, object] + """ + + _validation = { + 'name': {'readonly': True}, + 'display': {'readonly': True}, + 'origin': {'readonly': True}, + 'properties': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display': {'key': 'display', 'type': 'OperationDisplay'}, + 'origin': {'key': 'origin', 'type': 'str'}, + 'properties': {'key': 'properties', 'type': '{object}'}, + } + + def __init__(self, **kwargs) -> None: + super(Operation, self).__init__(**kwargs) + self.name = None + self.display = None + self.origin = None + self.properties = None diff --git a/src/rdbms/azext_rdbms/postgresql/models/performance_tier_properties.py b/src/rdbms/azext_rdbms/postgresql/models/performance_tier_properties.py index cb1c8d45112..97268d3f7c9 100644 --- a/src/rdbms/azext_rdbms/postgresql/models/performance_tier_properties.py +++ b/src/rdbms/azext_rdbms/postgresql/models/performance_tier_properties.py @@ -28,7 +28,7 @@ class PerformanceTierProperties(Model): 'service_level_objectives': {'key': 'serviceLevelObjectives', 'type': '[PerformanceTierServiceLevelObjectives]'}, } - def __init__(self, id=None, service_level_objectives=None): - super(PerformanceTierProperties, self).__init__() - self.id = id - self.service_level_objectives = service_level_objectives + def __init__(self, **kwargs): + super(PerformanceTierProperties, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.service_level_objectives = kwargs.get('service_level_objectives', None) diff --git a/src/rdbms/azext_rdbms/postgresql/models/performance_tier_properties_py3.py b/src/rdbms/azext_rdbms/postgresql/models/performance_tier_properties_py3.py new file mode 100644 index 00000000000..3d56f700d21 --- /dev/null +++ b/src/rdbms/azext_rdbms/postgresql/models/performance_tier_properties_py3.py @@ -0,0 +1,34 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PerformanceTierProperties(Model): + """Performance tier properties. + + :param id: ID of the performance tier. + :type id: str + :param service_level_objectives: Service level objectives associated with + the performance tier + :type service_level_objectives: + list[~azure.mgmt.rdbms.postgresql.models.PerformanceTierServiceLevelObjectives] + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'service_level_objectives': {'key': 'serviceLevelObjectives', 'type': '[PerformanceTierServiceLevelObjectives]'}, + } + + def __init__(self, *, id: str=None, service_level_objectives=None, **kwargs) -> None: + super(PerformanceTierProperties, self).__init__(**kwargs) + self.id = id + self.service_level_objectives = service_level_objectives diff --git a/src/rdbms/azext_rdbms/postgresql/models/performance_tier_service_level_objectives.py b/src/rdbms/azext_rdbms/postgresql/models/performance_tier_service_level_objectives.py index 08541b20c60..4f653dc2834 100644 --- a/src/rdbms/azext_rdbms/postgresql/models/performance_tier_service_level_objectives.py +++ b/src/rdbms/azext_rdbms/postgresql/models/performance_tier_service_level_objectives.py @@ -47,13 +47,13 @@ class PerformanceTierServiceLevelObjectives(Model): 'min_storage_mb': {'key': 'minStorageMB', 'type': 'int'}, } - def __init__(self, id=None, edition=None, v_core=None, hardware_generation=None, max_backup_retention_days=None, min_backup_retention_days=None, max_storage_mb=None, min_storage_mb=None): - super(PerformanceTierServiceLevelObjectives, self).__init__() - self.id = id - self.edition = edition - self.v_core = v_core - self.hardware_generation = hardware_generation - self.max_backup_retention_days = max_backup_retention_days - self.min_backup_retention_days = min_backup_retention_days - self.max_storage_mb = max_storage_mb - self.min_storage_mb = min_storage_mb + def __init__(self, **kwargs): + super(PerformanceTierServiceLevelObjectives, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.edition = kwargs.get('edition', None) + self.v_core = kwargs.get('v_core', None) + self.hardware_generation = kwargs.get('hardware_generation', None) + self.max_backup_retention_days = kwargs.get('max_backup_retention_days', None) + self.min_backup_retention_days = kwargs.get('min_backup_retention_days', None) + self.max_storage_mb = kwargs.get('max_storage_mb', None) + self.min_storage_mb = kwargs.get('min_storage_mb', None) diff --git a/src/rdbms/azext_rdbms/postgresql/models/performance_tier_service_level_objectives_py3.py b/src/rdbms/azext_rdbms/postgresql/models/performance_tier_service_level_objectives_py3.py new file mode 100644 index 00000000000..083e4720ab4 --- /dev/null +++ b/src/rdbms/azext_rdbms/postgresql/models/performance_tier_service_level_objectives_py3.py @@ -0,0 +1,59 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class PerformanceTierServiceLevelObjectives(Model): + """Service level objectives for performance tier. + + :param id: ID for the service level objective. + :type id: str + :param edition: Edition of the performance tier. + :type edition: str + :param v_core: vCore associated with the service level objective + :type v_core: int + :param hardware_generation: Hardware generation associated with the + service level objective + :type hardware_generation: str + :param max_backup_retention_days: Maximum Backup retention in days for the + performance tier edition + :type max_backup_retention_days: int + :param min_backup_retention_days: Minimum Backup retention in days for the + performance tier edition + :type min_backup_retention_days: int + :param max_storage_mb: Max storage allowed for a server. + :type max_storage_mb: int + :param min_storage_mb: Max storage allowed for a server. + :type min_storage_mb: int + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'edition': {'key': 'edition', 'type': 'str'}, + 'v_core': {'key': 'vCore', 'type': 'int'}, + 'hardware_generation': {'key': 'hardwareGeneration', 'type': 'str'}, + 'max_backup_retention_days': {'key': 'maxBackupRetentionDays', 'type': 'int'}, + 'min_backup_retention_days': {'key': 'minBackupRetentionDays', 'type': 'int'}, + 'max_storage_mb': {'key': 'maxStorageMB', 'type': 'int'}, + 'min_storage_mb': {'key': 'minStorageMB', 'type': 'int'}, + } + + def __init__(self, *, id: str=None, edition: str=None, v_core: int=None, hardware_generation: str=None, max_backup_retention_days: int=None, min_backup_retention_days: int=None, max_storage_mb: int=None, min_storage_mb: int=None, **kwargs) -> None: + super(PerformanceTierServiceLevelObjectives, self).__init__(**kwargs) + self.id = id + self.edition = edition + self.v_core = v_core + self.hardware_generation = hardware_generation + self.max_backup_retention_days = max_backup_retention_days + self.min_backup_retention_days = min_backup_retention_days + self.max_storage_mb = max_storage_mb + self.min_storage_mb = min_storage_mb diff --git a/src/rdbms/azext_rdbms/postgresql/models/postgre_sql_management_client_enums.py b/src/rdbms/azext_rdbms/postgresql/models/postgre_sql_management_client_enums.py index c58d5ac929d..067e776798b 100644 --- a/src/rdbms/azext_rdbms/postgresql/models/postgre_sql_management_client_enums.py +++ b/src/rdbms/azext_rdbms/postgresql/models/postgre_sql_management_client_enums.py @@ -12,39 +12,39 @@ from enum import Enum -class ServerVersion(Enum): +class ServerVersion(str, Enum): nine_full_stop_five = "9.5" nine_full_stop_six = "9.6" -class SslEnforcementEnum(Enum): +class SslEnforcementEnum(str, Enum): enabled = "Enabled" disabled = "Disabled" -class ServerState(Enum): +class ServerState(str, Enum): ready = "Ready" dropping = "Dropping" disabled = "Disabled" -class GeoRedundantBackup(Enum): +class GeoRedundantBackup(str, Enum): enabled = "Enabled" disabled = "Disabled" -class SkuTier(Enum): +class SkuTier(str, Enum): basic = "Basic" general_purpose = "GeneralPurpose" memory_optimized = "MemoryOptimized" -class OperationOrigin(Enum): +class OperationOrigin(str, Enum): not_specified = "NotSpecified" user = "user" diff --git a/src/rdbms/azext_rdbms/postgresql/models/proxy_resource.py b/src/rdbms/azext_rdbms/postgresql/models/proxy_resource.py index b982916c5e5..1223f4670fe 100644 --- a/src/rdbms/azext_rdbms/postgresql/models/proxy_resource.py +++ b/src/rdbms/azext_rdbms/postgresql/models/proxy_resource.py @@ -38,8 +38,8 @@ class ProxyResource(Model): 'type': {'key': 'type', 'type': 'str'}, } - def __init__(self): - super(ProxyResource, self).__init__() + def __init__(self, **kwargs): + super(ProxyResource, self).__init__(**kwargs) self.id = None self.name = None self.type = None diff --git a/src/rdbms/azext_rdbms/postgresql/models/proxy_resource_py3.py b/src/rdbms/azext_rdbms/postgresql/models/proxy_resource_py3.py new file mode 100644 index 00000000000..e0dde467e58 --- /dev/null +++ b/src/rdbms/azext_rdbms/postgresql/models/proxy_resource_py3.py @@ -0,0 +1,45 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ProxyResource(Model): + """Resource properties. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(ProxyResource, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None diff --git a/src/rdbms/azext_rdbms/postgresql/models/server.py b/src/rdbms/azext_rdbms/postgresql/models/server.py index c7bc6e3e1a6..be0aabcb6fa 100644 --- a/src/rdbms/azext_rdbms/postgresql/models/server.py +++ b/src/rdbms/azext_rdbms/postgresql/models/server.py @@ -18,13 +18,15 @@ class Server(TrackedResource): Variables are only populated by the server, and will be ignored when sending a request. + All required parameters must be populated in order to send to Azure. + :ivar id: Resource ID :vartype id: str :ivar name: Resource name. :vartype name: str :ivar type: Resource type. :vartype type: str - :param location: The location the resource resides in. + :param location: Required. The location the resource resides in. :type location: str :param tags: Application-specific metadata in the form of key-value pairs. :type tags: dict[str, str] @@ -77,13 +79,13 @@ class Server(TrackedResource): 'storage_profile': {'key': 'properties.storageProfile', 'type': 'StorageProfile'}, } - def __init__(self, location, tags=None, sku=None, administrator_login=None, version=None, ssl_enforcement=None, user_visible_state=None, fully_qualified_domain_name=None, earliest_restore_date=None, storage_profile=None): - super(Server, self).__init__(location=location, tags=tags) - self.sku = sku - self.administrator_login = administrator_login - self.version = version - self.ssl_enforcement = ssl_enforcement - self.user_visible_state = user_visible_state - self.fully_qualified_domain_name = fully_qualified_domain_name - self.earliest_restore_date = earliest_restore_date - self.storage_profile = storage_profile + def __init__(self, **kwargs): + super(Server, self).__init__(**kwargs) + self.sku = kwargs.get('sku', None) + self.administrator_login = kwargs.get('administrator_login', None) + self.version = kwargs.get('version', None) + self.ssl_enforcement = kwargs.get('ssl_enforcement', None) + self.user_visible_state = kwargs.get('user_visible_state', None) + self.fully_qualified_domain_name = kwargs.get('fully_qualified_domain_name', None) + self.earliest_restore_date = kwargs.get('earliest_restore_date', None) + self.storage_profile = kwargs.get('storage_profile', None) diff --git a/src/rdbms/azext_rdbms/postgresql/models/server_for_create.py b/src/rdbms/azext_rdbms/postgresql/models/server_for_create.py index 3b28a60b632..f62cec52744 100644 --- a/src/rdbms/azext_rdbms/postgresql/models/server_for_create.py +++ b/src/rdbms/azext_rdbms/postgresql/models/server_for_create.py @@ -15,12 +15,14 @@ class ServerForCreate(Model): """Represents a server to be created. + All required parameters must be populated in order to send to Azure. + :param sku: The SKU (pricing tier) of the server. :type sku: ~azure.mgmt.rdbms.postgresql.models.Sku - :param properties: Properties of the server. + :param properties: Required. Properties of the server. :type properties: ~azure.mgmt.rdbms.postgresql.models.ServerPropertiesForCreate - :param location: The location the resource resides in. + :param location: Required. The location the resource resides in. :type location: str :param tags: Application-specific metadata in the form of key-value pairs. :type tags: dict[str, str] @@ -38,9 +40,9 @@ class ServerForCreate(Model): 'tags': {'key': 'tags', 'type': '{str}'}, } - def __init__(self, properties, location, sku=None, tags=None): - super(ServerForCreate, self).__init__() - self.sku = sku - self.properties = properties - self.location = location - self.tags = tags + def __init__(self, **kwargs): + super(ServerForCreate, self).__init__(**kwargs) + self.sku = kwargs.get('sku', None) + self.properties = kwargs.get('properties', None) + self.location = kwargs.get('location', None) + self.tags = kwargs.get('tags', None) diff --git a/src/rdbms/azext_rdbms/postgresql/models/server_for_create_py3.py b/src/rdbms/azext_rdbms/postgresql/models/server_for_create_py3.py new file mode 100644 index 00000000000..4e686e7a266 --- /dev/null +++ b/src/rdbms/azext_rdbms/postgresql/models/server_for_create_py3.py @@ -0,0 +1,48 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ServerForCreate(Model): + """Represents a server to be created. + + All required parameters must be populated in order to send to Azure. + + :param sku: The SKU (pricing tier) of the server. + :type sku: ~azure.mgmt.rdbms.postgresql.models.Sku + :param properties: Required. Properties of the server. + :type properties: + ~azure.mgmt.rdbms.postgresql.models.ServerPropertiesForCreate + :param location: Required. The location the resource resides in. + :type location: str + :param tags: Application-specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _validation = { + 'properties': {'required': True}, + 'location': {'required': True}, + } + + _attribute_map = { + 'sku': {'key': 'sku', 'type': 'Sku'}, + 'properties': {'key': 'properties', 'type': 'ServerPropertiesForCreate'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, properties, location: str, sku=None, tags=None, **kwargs) -> None: + super(ServerForCreate, self).__init__(**kwargs) + self.sku = sku + self.properties = properties + self.location = location + self.tags = tags diff --git a/src/rdbms/azext_rdbms/postgresql/models/server_properties_for_create.py b/src/rdbms/azext_rdbms/postgresql/models/server_properties_for_create.py index 28dbe618494..8c9b8a45eb6 100644 --- a/src/rdbms/azext_rdbms/postgresql/models/server_properties_for_create.py +++ b/src/rdbms/azext_rdbms/postgresql/models/server_properties_for_create.py @@ -17,7 +17,9 @@ class ServerPropertiesForCreate(Model): You probably want to use the sub-classes and not this class directly. Known sub-classes are: ServerPropertiesForDefaultCreate, - ServerPropertiesForRestore + ServerPropertiesForRestore, ServerPropertiesForGeoRestore + + All required parameters must be populated in order to send to Azure. :param version: Server version. Possible values include: '9.5', '9.6' :type version: str or ~azure.mgmt.rdbms.postgresql.models.ServerVersion @@ -27,7 +29,7 @@ class ServerPropertiesForCreate(Model): ~azure.mgmt.rdbms.postgresql.models.SslEnforcementEnum :param storage_profile: Storage profile of a server. :type storage_profile: ~azure.mgmt.rdbms.postgresql.models.StorageProfile - :param create_mode: Constant filled by server. + :param create_mode: Required. Constant filled by server. :type create_mode: str """ @@ -43,12 +45,12 @@ class ServerPropertiesForCreate(Model): } _subtype_map = { - 'create_mode': {'Default': 'ServerPropertiesForDefaultCreate', 'PointInTimeRestore': 'ServerPropertiesForRestore'} + 'create_mode': {'Default': 'ServerPropertiesForDefaultCreate', 'PointInTimeRestore': 'ServerPropertiesForRestore', 'GeoRestore': 'ServerPropertiesForGeoRestore'} } - def __init__(self, version=None, ssl_enforcement=None, storage_profile=None): - super(ServerPropertiesForCreate, self).__init__() - self.version = version - self.ssl_enforcement = ssl_enforcement - self.storage_profile = storage_profile + def __init__(self, **kwargs): + super(ServerPropertiesForCreate, self).__init__(**kwargs) + self.version = kwargs.get('version', None) + self.ssl_enforcement = kwargs.get('ssl_enforcement', None) + self.storage_profile = kwargs.get('storage_profile', None) self.create_mode = None diff --git a/src/rdbms/azext_rdbms/postgresql/models/server_properties_for_create_py3.py b/src/rdbms/azext_rdbms/postgresql/models/server_properties_for_create_py3.py new file mode 100644 index 00000000000..5983a5bff36 --- /dev/null +++ b/src/rdbms/azext_rdbms/postgresql/models/server_properties_for_create_py3.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ServerPropertiesForCreate(Model): + """The properties used to create a new server. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: ServerPropertiesForDefaultCreate, + ServerPropertiesForRestore, ServerPropertiesForGeoRestore + + All required parameters must be populated in order to send to Azure. + + :param version: Server version. Possible values include: '9.5', '9.6' + :type version: str or ~azure.mgmt.rdbms.postgresql.models.ServerVersion + :param ssl_enforcement: Enable ssl enforcement or not when connect to + server. Possible values include: 'Enabled', 'Disabled' + :type ssl_enforcement: str or + ~azure.mgmt.rdbms.postgresql.models.SslEnforcementEnum + :param storage_profile: Storage profile of a server. + :type storage_profile: ~azure.mgmt.rdbms.postgresql.models.StorageProfile + :param create_mode: Required. Constant filled by server. + :type create_mode: str + """ + + _validation = { + 'create_mode': {'required': True}, + } + + _attribute_map = { + 'version': {'key': 'version', 'type': 'str'}, + 'ssl_enforcement': {'key': 'sslEnforcement', 'type': 'SslEnforcementEnum'}, + 'storage_profile': {'key': 'storageProfile', 'type': 'StorageProfile'}, + 'create_mode': {'key': 'createMode', 'type': 'str'}, + } + + _subtype_map = { + 'create_mode': {'Default': 'ServerPropertiesForDefaultCreate', 'PointInTimeRestore': 'ServerPropertiesForRestore', 'GeoRestore': 'ServerPropertiesForGeoRestore'} + } + + def __init__(self, *, version=None, ssl_enforcement=None, storage_profile=None, **kwargs) -> None: + super(ServerPropertiesForCreate, self).__init__(**kwargs) + self.version = version + self.ssl_enforcement = ssl_enforcement + self.storage_profile = storage_profile + self.create_mode = None diff --git a/src/rdbms/azext_rdbms/postgresql/models/server_properties_for_default_create.py b/src/rdbms/azext_rdbms/postgresql/models/server_properties_for_default_create.py index 487e01908dd..89d145f48dc 100644 --- a/src/rdbms/azext_rdbms/postgresql/models/server_properties_for_default_create.py +++ b/src/rdbms/azext_rdbms/postgresql/models/server_properties_for_default_create.py @@ -15,6 +15,8 @@ class ServerPropertiesForDefaultCreate(ServerPropertiesForCreate): """The properties used to create a new server. + All required parameters must be populated in order to send to Azure. + :param version: Server version. Possible values include: '9.5', '9.6' :type version: str or ~azure.mgmt.rdbms.postgresql.models.ServerVersion :param ssl_enforcement: Enable ssl enforcement or not when connect to @@ -23,14 +25,14 @@ class ServerPropertiesForDefaultCreate(ServerPropertiesForCreate): ~azure.mgmt.rdbms.postgresql.models.SslEnforcementEnum :param storage_profile: Storage profile of a server. :type storage_profile: ~azure.mgmt.rdbms.postgresql.models.StorageProfile - :param create_mode: Constant filled by server. + :param create_mode: Required. Constant filled by server. :type create_mode: str - :param administrator_login: The administrator's login name of a server. - Can only be specified when the server is being created (and is required - for creation). + :param administrator_login: Required. The administrator's login name of a + server. Can only be specified when the server is being created (and is + required for creation). :type administrator_login: str - :param administrator_login_password: The password of the administrator - login. + :param administrator_login_password: Required. The password of the + administrator login. :type administrator_login_password: str """ @@ -49,8 +51,8 @@ class ServerPropertiesForDefaultCreate(ServerPropertiesForCreate): 'administrator_login_password': {'key': 'administratorLoginPassword', 'type': 'str'}, } - def __init__(self, administrator_login, administrator_login_password, version=None, ssl_enforcement=None, storage_profile=None): - super(ServerPropertiesForDefaultCreate, self).__init__(version=version, ssl_enforcement=ssl_enforcement, storage_profile=storage_profile) - self.administrator_login = administrator_login - self.administrator_login_password = administrator_login_password + def __init__(self, **kwargs): + super(ServerPropertiesForDefaultCreate, self).__init__(**kwargs) + self.administrator_login = kwargs.get('administrator_login', None) + self.administrator_login_password = kwargs.get('administrator_login_password', None) self.create_mode = 'Default' diff --git a/src/rdbms/azext_rdbms/postgresql/models/server_properties_for_default_create_py3.py b/src/rdbms/azext_rdbms/postgresql/models/server_properties_for_default_create_py3.py new file mode 100644 index 00000000000..6bb8809b653 --- /dev/null +++ b/src/rdbms/azext_rdbms/postgresql/models/server_properties_for_default_create_py3.py @@ -0,0 +1,58 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .server_properties_for_create import ServerPropertiesForCreate + + +class ServerPropertiesForDefaultCreate(ServerPropertiesForCreate): + """The properties used to create a new server. + + All required parameters must be populated in order to send to Azure. + + :param version: Server version. Possible values include: '9.5', '9.6' + :type version: str or ~azure.mgmt.rdbms.postgresql.models.ServerVersion + :param ssl_enforcement: Enable ssl enforcement or not when connect to + server. Possible values include: 'Enabled', 'Disabled' + :type ssl_enforcement: str or + ~azure.mgmt.rdbms.postgresql.models.SslEnforcementEnum + :param storage_profile: Storage profile of a server. + :type storage_profile: ~azure.mgmt.rdbms.postgresql.models.StorageProfile + :param create_mode: Required. Constant filled by server. + :type create_mode: str + :param administrator_login: Required. The administrator's login name of a + server. Can only be specified when the server is being created (and is + required for creation). + :type administrator_login: str + :param administrator_login_password: Required. The password of the + administrator login. + :type administrator_login_password: str + """ + + _validation = { + 'create_mode': {'required': True}, + 'administrator_login': {'required': True}, + 'administrator_login_password': {'required': True}, + } + + _attribute_map = { + 'version': {'key': 'version', 'type': 'str'}, + 'ssl_enforcement': {'key': 'sslEnforcement', 'type': 'SslEnforcementEnum'}, + 'storage_profile': {'key': 'storageProfile', 'type': 'StorageProfile'}, + 'create_mode': {'key': 'createMode', 'type': 'str'}, + 'administrator_login': {'key': 'administratorLogin', 'type': 'str'}, + 'administrator_login_password': {'key': 'administratorLoginPassword', 'type': 'str'}, + } + + def __init__(self, *, administrator_login: str, administrator_login_password: str, version=None, ssl_enforcement=None, storage_profile=None, **kwargs) -> None: + super(ServerPropertiesForDefaultCreate, self).__init__(version=version, ssl_enforcement=ssl_enforcement, storage_profile=storage_profile, **kwargs) + self.administrator_login = administrator_login + self.administrator_login_password = administrator_login_password + self.create_mode = 'Default' diff --git a/src/rdbms/azext_rdbms/postgresql/models/server_properties_for_geo_restore.py b/src/rdbms/azext_rdbms/postgresql/models/server_properties_for_geo_restore.py new file mode 100644 index 00000000000..ccd84f7330f --- /dev/null +++ b/src/rdbms/azext_rdbms/postgresql/models/server_properties_for_geo_restore.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .server_properties_for_create import ServerPropertiesForCreate + + +class ServerPropertiesForGeoRestore(ServerPropertiesForCreate): + """The properties used to create a new server by restoring to a different + region from a geo replicated backup. + + All required parameters must be populated in order to send to Azure. + + :param version: Server version. Possible values include: '9.5', '9.6' + :type version: str or ~azure.mgmt.rdbms.postgresql.models.ServerVersion + :param ssl_enforcement: Enable ssl enforcement or not when connect to + server. Possible values include: 'Enabled', 'Disabled' + :type ssl_enforcement: str or + ~azure.mgmt.rdbms.postgresql.models.SslEnforcementEnum + :param storage_profile: Storage profile of a server. + :type storage_profile: ~azure.mgmt.rdbms.postgresql.models.StorageProfile + :param create_mode: Required. Constant filled by server. + :type create_mode: str + :param source_server_id: Required. The source server id to restore from. + :type source_server_id: str + """ + + _validation = { + 'create_mode': {'required': True}, + 'source_server_id': {'required': True}, + } + + _attribute_map = { + 'version': {'key': 'version', 'type': 'str'}, + 'ssl_enforcement': {'key': 'sslEnforcement', 'type': 'SslEnforcementEnum'}, + 'storage_profile': {'key': 'storageProfile', 'type': 'StorageProfile'}, + 'create_mode': {'key': 'createMode', 'type': 'str'}, + 'source_server_id': {'key': 'sourceServerId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ServerPropertiesForGeoRestore, self).__init__(**kwargs) + self.source_server_id = kwargs.get('source_server_id', None) + self.create_mode = 'GeoRestore' diff --git a/src/rdbms/azext_rdbms/postgresql/models/server_properties_for_geo_restore_py3.py b/src/rdbms/azext_rdbms/postgresql/models/server_properties_for_geo_restore_py3.py new file mode 100644 index 00000000000..2e01f31edee --- /dev/null +++ b/src/rdbms/azext_rdbms/postgresql/models/server_properties_for_geo_restore_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .server_properties_for_create import ServerPropertiesForCreate + + +class ServerPropertiesForGeoRestore(ServerPropertiesForCreate): + """The properties used to create a new server by restoring to a different + region from a geo replicated backup. + + All required parameters must be populated in order to send to Azure. + + :param version: Server version. Possible values include: '9.5', '9.6' + :type version: str or ~azure.mgmt.rdbms.postgresql.models.ServerVersion + :param ssl_enforcement: Enable ssl enforcement or not when connect to + server. Possible values include: 'Enabled', 'Disabled' + :type ssl_enforcement: str or + ~azure.mgmt.rdbms.postgresql.models.SslEnforcementEnum + :param storage_profile: Storage profile of a server. + :type storage_profile: ~azure.mgmt.rdbms.postgresql.models.StorageProfile + :param create_mode: Required. Constant filled by server. + :type create_mode: str + :param source_server_id: Required. The source server id to restore from. + :type source_server_id: str + """ + + _validation = { + 'create_mode': {'required': True}, + 'source_server_id': {'required': True}, + } + + _attribute_map = { + 'version': {'key': 'version', 'type': 'str'}, + 'ssl_enforcement': {'key': 'sslEnforcement', 'type': 'SslEnforcementEnum'}, + 'storage_profile': {'key': 'storageProfile', 'type': 'StorageProfile'}, + 'create_mode': {'key': 'createMode', 'type': 'str'}, + 'source_server_id': {'key': 'sourceServerId', 'type': 'str'}, + } + + def __init__(self, *, source_server_id: str, version=None, ssl_enforcement=None, storage_profile=None, **kwargs) -> None: + super(ServerPropertiesForGeoRestore, self).__init__(version=version, ssl_enforcement=ssl_enforcement, storage_profile=storage_profile, **kwargs) + self.source_server_id = source_server_id + self.create_mode = 'GeoRestore' diff --git a/src/rdbms/azext_rdbms/postgresql/models/server_properties_for_restore.py b/src/rdbms/azext_rdbms/postgresql/models/server_properties_for_restore.py index a8f224f343e..31ea1129095 100644 --- a/src/rdbms/azext_rdbms/postgresql/models/server_properties_for_restore.py +++ b/src/rdbms/azext_rdbms/postgresql/models/server_properties_for_restore.py @@ -13,7 +13,9 @@ class ServerPropertiesForRestore(ServerPropertiesForCreate): - """The properties to a new server by restoring from a backup. + """The properties used to create a new server by restoring from a backup. + + All required parameters must be populated in order to send to Azure. :param version: Server version. Possible values include: '9.5', '9.6' :type version: str or ~azure.mgmt.rdbms.postgresql.models.ServerVersion @@ -23,12 +25,12 @@ class ServerPropertiesForRestore(ServerPropertiesForCreate): ~azure.mgmt.rdbms.postgresql.models.SslEnforcementEnum :param storage_profile: Storage profile of a server. :type storage_profile: ~azure.mgmt.rdbms.postgresql.models.StorageProfile - :param create_mode: Constant filled by server. + :param create_mode: Required. Constant filled by server. :type create_mode: str - :param source_server_id: The source server id to restore from. + :param source_server_id: Required. The source server id to restore from. :type source_server_id: str - :param restore_point_in_time: Restore point creation time (ISO8601 - format), specifying the time to restore from. + :param restore_point_in_time: Required. Restore point creation time + (ISO8601 format), specifying the time to restore from. :type restore_point_in_time: datetime """ @@ -47,8 +49,8 @@ class ServerPropertiesForRestore(ServerPropertiesForCreate): 'restore_point_in_time': {'key': 'restorePointInTime', 'type': 'iso-8601'}, } - def __init__(self, source_server_id, restore_point_in_time, version=None, ssl_enforcement=None, storage_profile=None): - super(ServerPropertiesForRestore, self).__init__(version=version, ssl_enforcement=ssl_enforcement, storage_profile=storage_profile) - self.source_server_id = source_server_id - self.restore_point_in_time = restore_point_in_time + def __init__(self, **kwargs): + super(ServerPropertiesForRestore, self).__init__(**kwargs) + self.source_server_id = kwargs.get('source_server_id', None) + self.restore_point_in_time = kwargs.get('restore_point_in_time', None) self.create_mode = 'PointInTimeRestore' diff --git a/src/rdbms/azext_rdbms/postgresql/models/server_properties_for_restore_py3.py b/src/rdbms/azext_rdbms/postgresql/models/server_properties_for_restore_py3.py new file mode 100644 index 00000000000..61f4aedc4f7 --- /dev/null +++ b/src/rdbms/azext_rdbms/postgresql/models/server_properties_for_restore_py3.py @@ -0,0 +1,56 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .server_properties_for_create import ServerPropertiesForCreate + + +class ServerPropertiesForRestore(ServerPropertiesForCreate): + """The properties used to create a new server by restoring from a backup. + + All required parameters must be populated in order to send to Azure. + + :param version: Server version. Possible values include: '9.5', '9.6' + :type version: str or ~azure.mgmt.rdbms.postgresql.models.ServerVersion + :param ssl_enforcement: Enable ssl enforcement or not when connect to + server. Possible values include: 'Enabled', 'Disabled' + :type ssl_enforcement: str or + ~azure.mgmt.rdbms.postgresql.models.SslEnforcementEnum + :param storage_profile: Storage profile of a server. + :type storage_profile: ~azure.mgmt.rdbms.postgresql.models.StorageProfile + :param create_mode: Required. Constant filled by server. + :type create_mode: str + :param source_server_id: Required. The source server id to restore from. + :type source_server_id: str + :param restore_point_in_time: Required. Restore point creation time + (ISO8601 format), specifying the time to restore from. + :type restore_point_in_time: datetime + """ + + _validation = { + 'create_mode': {'required': True}, + 'source_server_id': {'required': True}, + 'restore_point_in_time': {'required': True}, + } + + _attribute_map = { + 'version': {'key': 'version', 'type': 'str'}, + 'ssl_enforcement': {'key': 'sslEnforcement', 'type': 'SslEnforcementEnum'}, + 'storage_profile': {'key': 'storageProfile', 'type': 'StorageProfile'}, + 'create_mode': {'key': 'createMode', 'type': 'str'}, + 'source_server_id': {'key': 'sourceServerId', 'type': 'str'}, + 'restore_point_in_time': {'key': 'restorePointInTime', 'type': 'iso-8601'}, + } + + def __init__(self, *, source_server_id: str, restore_point_in_time, version=None, ssl_enforcement=None, storage_profile=None, **kwargs) -> None: + super(ServerPropertiesForRestore, self).__init__(version=version, ssl_enforcement=ssl_enforcement, storage_profile=storage_profile, **kwargs) + self.source_server_id = source_server_id + self.restore_point_in_time = restore_point_in_time + self.create_mode = 'PointInTimeRestore' diff --git a/src/rdbms/azext_rdbms/postgresql/models/server_py3.py b/src/rdbms/azext_rdbms/postgresql/models/server_py3.py new file mode 100644 index 00000000000..2db1674947d --- /dev/null +++ b/src/rdbms/azext_rdbms/postgresql/models/server_py3.py @@ -0,0 +1,91 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .tracked_resource import TrackedResource + + +class Server(TrackedResource): + """Represents a server. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Required. The location the resource resides in. + :type location: str + :param tags: Application-specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + :param sku: The SKU (pricing tier) of the server. + :type sku: ~azure.mgmt.rdbms.postgresql.models.Sku + :param administrator_login: The administrator's login name of a server. + Can only be specified when the server is being created (and is required + for creation). + :type administrator_login: str + :param version: Server version. Possible values include: '9.5', '9.6' + :type version: str or ~azure.mgmt.rdbms.postgresql.models.ServerVersion + :param ssl_enforcement: Enable ssl enforcement or not when connect to + server. Possible values include: 'Enabled', 'Disabled' + :type ssl_enforcement: str or + ~azure.mgmt.rdbms.postgresql.models.SslEnforcementEnum + :param user_visible_state: A state of a server that is visible to user. + Possible values include: 'Ready', 'Dropping', 'Disabled' + :type user_visible_state: str or + ~azure.mgmt.rdbms.postgresql.models.ServerState + :param fully_qualified_domain_name: The fully qualified domain name of a + server. + :type fully_qualified_domain_name: str + :param earliest_restore_date: Earliest restore point creation time + (ISO8601 format) + :type earliest_restore_date: datetime + :param storage_profile: Storage profile of a server. + :type storage_profile: ~azure.mgmt.rdbms.postgresql.models.StorageProfile + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'Sku'}, + 'administrator_login': {'key': 'properties.administratorLogin', 'type': 'str'}, + 'version': {'key': 'properties.version', 'type': 'str'}, + 'ssl_enforcement': {'key': 'properties.sslEnforcement', 'type': 'SslEnforcementEnum'}, + 'user_visible_state': {'key': 'properties.userVisibleState', 'type': 'str'}, + 'fully_qualified_domain_name': {'key': 'properties.fullyQualifiedDomainName', 'type': 'str'}, + 'earliest_restore_date': {'key': 'properties.earliestRestoreDate', 'type': 'iso-8601'}, + 'storage_profile': {'key': 'properties.storageProfile', 'type': 'StorageProfile'}, + } + + def __init__(self, *, location: str, tags=None, sku=None, administrator_login: str=None, version=None, ssl_enforcement=None, user_visible_state=None, fully_qualified_domain_name: str=None, earliest_restore_date=None, storage_profile=None, **kwargs) -> None: + super(Server, self).__init__(location=location, tags=tags, **kwargs) + self.sku = sku + self.administrator_login = administrator_login + self.version = version + self.ssl_enforcement = ssl_enforcement + self.user_visible_state = user_visible_state + self.fully_qualified_domain_name = fully_qualified_domain_name + self.earliest_restore_date = earliest_restore_date + self.storage_profile = storage_profile diff --git a/src/rdbms/azext_rdbms/postgresql/models/server_update_parameters.py b/src/rdbms/azext_rdbms/postgresql/models/server_update_parameters.py index 5888125236a..f806ed2151a 100644 --- a/src/rdbms/azext_rdbms/postgresql/models/server_update_parameters.py +++ b/src/rdbms/azext_rdbms/postgresql/models/server_update_parameters.py @@ -42,11 +42,11 @@ class ServerUpdateParameters(Model): 'tags': {'key': 'tags', 'type': '{str}'}, } - def __init__(self, sku=None, storage_profile=None, administrator_login_password=None, version=None, ssl_enforcement=None, tags=None): - super(ServerUpdateParameters, self).__init__() - self.sku = sku - self.storage_profile = storage_profile - self.administrator_login_password = administrator_login_password - self.version = version - self.ssl_enforcement = ssl_enforcement - self.tags = tags + def __init__(self, **kwargs): + super(ServerUpdateParameters, self).__init__(**kwargs) + self.sku = kwargs.get('sku', None) + self.storage_profile = kwargs.get('storage_profile', None) + self.administrator_login_password = kwargs.get('administrator_login_password', None) + self.version = kwargs.get('version', None) + self.ssl_enforcement = kwargs.get('ssl_enforcement', None) + self.tags = kwargs.get('tags', None) diff --git a/src/rdbms/azext_rdbms/postgresql/models/server_update_parameters_py3.py b/src/rdbms/azext_rdbms/postgresql/models/server_update_parameters_py3.py new file mode 100644 index 00000000000..f7f3a6a1b00 --- /dev/null +++ b/src/rdbms/azext_rdbms/postgresql/models/server_update_parameters_py3.py @@ -0,0 +1,52 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class ServerUpdateParameters(Model): + """Parameters allowd to update for a server. + + :param sku: The SKU (pricing tier) of the server. + :type sku: ~azure.mgmt.rdbms.postgresql.models.Sku + :param storage_profile: Storage profile of a server. + :type storage_profile: ~azure.mgmt.rdbms.postgresql.models.StorageProfile + :param administrator_login_password: The password of the administrator + login. + :type administrator_login_password: str + :param version: The version of a server. Possible values include: '9.5', + '9.6' + :type version: str or ~azure.mgmt.rdbms.postgresql.models.ServerVersion + :param ssl_enforcement: Enable ssl enforcement or not when connect to + server. Possible values include: 'Enabled', 'Disabled' + :type ssl_enforcement: str or + ~azure.mgmt.rdbms.postgresql.models.SslEnforcementEnum + :param tags: Application-specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'sku': {'key': 'sku', 'type': 'Sku'}, + 'storage_profile': {'key': 'properties.storageProfile', 'type': 'StorageProfile'}, + 'administrator_login_password': {'key': 'properties.administratorLoginPassword', 'type': 'str'}, + 'version': {'key': 'properties.version', 'type': 'str'}, + 'ssl_enforcement': {'key': 'properties.sslEnforcement', 'type': 'SslEnforcementEnum'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, sku=None, storage_profile=None, administrator_login_password: str=None, version=None, ssl_enforcement=None, tags=None, **kwargs) -> None: + super(ServerUpdateParameters, self).__init__(**kwargs) + self.sku = sku + self.storage_profile = storage_profile + self.administrator_login_password = administrator_login_password + self.version = version + self.ssl_enforcement = ssl_enforcement + self.tags = tags diff --git a/src/rdbms/azext_rdbms/postgresql/models/sku.py b/src/rdbms/azext_rdbms/postgresql/models/sku.py index fb973426b82..a2dfddd4078 100644 --- a/src/rdbms/azext_rdbms/postgresql/models/sku.py +++ b/src/rdbms/azext_rdbms/postgresql/models/sku.py @@ -42,10 +42,10 @@ class Sku(Model): 'family': {'key': 'family', 'type': 'str'}, } - def __init__(self, name=None, tier=None, capacity=None, size=None, family=None): - super(Sku, self).__init__() - self.name = name - self.tier = tier - self.capacity = capacity - self.size = size - self.family = family + def __init__(self, **kwargs): + super(Sku, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.tier = kwargs.get('tier', None) + self.capacity = kwargs.get('capacity', None) + self.size = kwargs.get('size', None) + self.family = kwargs.get('family', None) diff --git a/src/rdbms/azext_rdbms/postgresql/models/sku_py3.py b/src/rdbms/azext_rdbms/postgresql/models/sku_py3.py new file mode 100644 index 00000000000..918f88853b4 --- /dev/null +++ b/src/rdbms/azext_rdbms/postgresql/models/sku_py3.py @@ -0,0 +1,51 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class Sku(Model): + """Billing information related properties of a server. + + :param name: The name of the sku, typically, tier + family + cores, e.g. + B_Gen4_1, GP_Gen5_8. + :type name: str + :param tier: The tier of the particular SKU, e.g. Basic. Possible values + include: 'Basic', 'GeneralPurpose', 'MemoryOptimized' + :type tier: str or ~azure.mgmt.rdbms.postgresql.models.SkuTier + :param capacity: The scale up/out capacity, representing server's compute + units. + :type capacity: int + :param size: The size code, to be interpreted by resource as appropriate. + :type size: str + :param family: The family of hardware. + :type family: str + """ + + _validation = { + 'capacity': {'minimum': 0}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + 'capacity': {'key': 'capacity', 'type': 'int'}, + 'size': {'key': 'size', 'type': 'str'}, + 'family': {'key': 'family', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, tier=None, capacity: int=None, size: str=None, family: str=None, **kwargs) -> None: + super(Sku, self).__init__(**kwargs) + self.name = name + self.tier = tier + self.capacity = capacity + self.size = size + self.family = family diff --git a/src/rdbms/azext_rdbms/postgresql/models/storage_profile.py b/src/rdbms/azext_rdbms/postgresql/models/storage_profile.py index 0f408839ce2..52d2ce839cd 100644 --- a/src/rdbms/azext_rdbms/postgresql/models/storage_profile.py +++ b/src/rdbms/azext_rdbms/postgresql/models/storage_profile.py @@ -31,8 +31,8 @@ class StorageProfile(Model): 'storage_mb': {'key': 'storageMB', 'type': 'int'}, } - def __init__(self, backup_retention_days=None, geo_redundant_backup=None, storage_mb=None): - super(StorageProfile, self).__init__() - self.backup_retention_days = backup_retention_days - self.geo_redundant_backup = geo_redundant_backup - self.storage_mb = storage_mb + def __init__(self, **kwargs): + super(StorageProfile, self).__init__(**kwargs) + self.backup_retention_days = kwargs.get('backup_retention_days', None) + self.geo_redundant_backup = kwargs.get('geo_redundant_backup', None) + self.storage_mb = kwargs.get('storage_mb', None) diff --git a/src/rdbms/azext_rdbms/postgresql/models/storage_profile_py3.py b/src/rdbms/azext_rdbms/postgresql/models/storage_profile_py3.py new file mode 100644 index 00000000000..bd6e048710a --- /dev/null +++ b/src/rdbms/azext_rdbms/postgresql/models/storage_profile_py3.py @@ -0,0 +1,38 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model + + +class StorageProfile(Model): + """Storage Profile properties of a server. + + :param backup_retention_days: Backup retention days for the server. + :type backup_retention_days: int + :param geo_redundant_backup: Enable Geo-redundant or not for server + backup. Possible values include: 'Enabled', 'Disabled' + :type geo_redundant_backup: str or + ~azure.mgmt.rdbms.postgresql.models.GeoRedundantBackup + :param storage_mb: Max storage allowed for a server. + :type storage_mb: int + """ + + _attribute_map = { + 'backup_retention_days': {'key': 'backupRetentionDays', 'type': 'int'}, + 'geo_redundant_backup': {'key': 'geoRedundantBackup', 'type': 'str'}, + 'storage_mb': {'key': 'storageMB', 'type': 'int'}, + } + + def __init__(self, *, backup_retention_days: int=None, geo_redundant_backup=None, storage_mb: int=None, **kwargs) -> None: + super(StorageProfile, self).__init__(**kwargs) + self.backup_retention_days = backup_retention_days + self.geo_redundant_backup = geo_redundant_backup + self.storage_mb = storage_mb diff --git a/src/rdbms/azext_rdbms/postgresql/models/tracked_resource.py b/src/rdbms/azext_rdbms/postgresql/models/tracked_resource.py index 0d199e6f6f9..67e93dd79e7 100644 --- a/src/rdbms/azext_rdbms/postgresql/models/tracked_resource.py +++ b/src/rdbms/azext_rdbms/postgresql/models/tracked_resource.py @@ -18,13 +18,15 @@ class TrackedResource(ProxyResource): Variables are only populated by the server, and will be ignored when sending a request. + All required parameters must be populated in order to send to Azure. + :ivar id: Resource ID :vartype id: str :ivar name: Resource name. :vartype name: str :ivar type: Resource type. :vartype type: str - :param location: The location the resource resides in. + :param location: Required. The location the resource resides in. :type location: str :param tags: Application-specific metadata in the form of key-value pairs. :type tags: dict[str, str] @@ -45,7 +47,7 @@ class TrackedResource(ProxyResource): 'tags': {'key': 'tags', 'type': '{str}'}, } - def __init__(self, location, tags=None): - super(TrackedResource, self).__init__() - self.location = location - self.tags = tags + def __init__(self, **kwargs): + super(TrackedResource, self).__init__(**kwargs) + self.location = kwargs.get('location', None) + self.tags = kwargs.get('tags', None) diff --git a/src/rdbms/azext_rdbms/postgresql/models/tracked_resource_py3.py b/src/rdbms/azext_rdbms/postgresql/models/tracked_resource_py3.py new file mode 100644 index 00000000000..6db5a5b1b40 --- /dev/null +++ b/src/rdbms/azext_rdbms/postgresql/models/tracked_resource_py3.py @@ -0,0 +1,53 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from .proxy_resource import ProxyResource + + +class TrackedResource(ProxyResource): + """Resource properties including location and tags for track resources. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource ID + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Required. The location the resource resides in. + :type location: str + :param tags: Application-specific metadata in the form of key-value pairs. + :type tags: dict[str, str] + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'location': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, location: str, tags=None, **kwargs) -> None: + super(TrackedResource, self).__init__(, **kwargs) + self.location = location + self.tags = tags diff --git a/src/rdbms/azext_rdbms/postgresql/operations/configurations_operations.py b/src/rdbms/azext_rdbms/postgresql/operations/configurations_operations.py index 64b9d83210c..a89d8b4a16a 100644 --- a/src/rdbms/azext_rdbms/postgresql/operations/configurations_operations.py +++ b/src/rdbms/azext_rdbms/postgresql/operations/configurations_operations.py @@ -12,8 +12,8 @@ import uuid from msrest.pipeline import ClientRawResponse from msrestazure.azure_exceptions import CloudError -from msrest.exceptions import DeserializationError -from msrestazure.azure_operation import AzureOperationPoller +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling from .. import models @@ -93,7 +93,7 @@ def _create_or_update_initial( return deserialized def create_or_update( - self, resource_group_name, server_name, configuration_name, value=None, source=None, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, server_name, configuration_name, value=None, source=None, custom_headers=None, raw=False, polling=True, **operation_config): """Updates a configuration of a server. :param resource_group_name: The name of the resource group that @@ -109,13 +109,16 @@ def create_or_update( :param source: Source of the configuration. :type source: str :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns - Configuration or ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Configuration or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.rdbms.postgresql.models.Configuration] - or ~msrest.pipeline.ClientRawResponse + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.rdbms.postgresql.models.Configuration]] :raises: :class:`CloudError` """ raw_result = self._create_or_update_initial( @@ -128,30 +131,8 @@ def create_or_update( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - deserialized = self._deserialize('Configuration', response) if raw: @@ -160,12 +141,13 @@ def get_long_running_output(response): return deserialized - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/servers/{serverName}/configurations/{configurationName}'} def get( diff --git a/src/rdbms/azext_rdbms/postgresql/operations/databases_operations.py b/src/rdbms/azext_rdbms/postgresql/operations/databases_operations.py index cfd4ee7ae05..3cc265baa3a 100644 --- a/src/rdbms/azext_rdbms/postgresql/operations/databases_operations.py +++ b/src/rdbms/azext_rdbms/postgresql/operations/databases_operations.py @@ -12,8 +12,8 @@ import uuid from msrest.pipeline import ClientRawResponse from msrestazure.azure_exceptions import CloudError -from msrest.exceptions import DeserializationError -from msrestazure.azure_operation import AzureOperationPoller +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling from .. import models @@ -95,7 +95,7 @@ def _create_or_update_initial( return deserialized def create_or_update( - self, resource_group_name, server_name, database_name, charset=None, collation=None, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, server_name, database_name, charset=None, collation=None, custom_headers=None, raw=False, polling=True, **operation_config): """Creates a new database or updates an existing database. :param resource_group_name: The name of the resource group that @@ -111,13 +111,16 @@ def create_or_update( :param collation: The collation of the database. :type collation: str :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns Database or - ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Database or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.rdbms.postgresql.models.Database] - or ~msrest.pipeline.ClientRawResponse + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.rdbms.postgresql.models.Database]] :raises: :class:`CloudError` """ raw_result = self._create_or_update_initial( @@ -130,30 +133,8 @@ def create_or_update( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200, 201, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - deserialized = self._deserialize('Database', response) if raw: @@ -162,12 +143,13 @@ def get_long_running_output(response): return deserialized - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/servers/{serverName}/databases/{databaseName}'} @@ -211,7 +193,7 @@ def _delete_initial( return client_raw_response def delete( - self, resource_group_name, server_name, database_name, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, server_name, database_name, custom_headers=None, raw=False, polling=True, **operation_config): """Deletes a database. :param resource_group_name: The name of the resource group that @@ -223,12 +205,14 @@ def delete( :param database_name: The name of the database. :type database_name: str :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns None or - ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or - ~msrest.pipeline.ClientRawResponse + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] :raises: :class:`CloudError` """ raw_result = self._delete_initial( @@ -239,40 +223,19 @@ def delete( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200, 202, 204]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/servers/{serverName}/databases/{databaseName}'} def get( diff --git a/src/rdbms/azext_rdbms/postgresql/operations/firewall_rules_operations.py b/src/rdbms/azext_rdbms/postgresql/operations/firewall_rules_operations.py index 82410f3d1d9..1af3188087c 100644 --- a/src/rdbms/azext_rdbms/postgresql/operations/firewall_rules_operations.py +++ b/src/rdbms/azext_rdbms/postgresql/operations/firewall_rules_operations.py @@ -12,8 +12,8 @@ import uuid from msrest.pipeline import ClientRawResponse from msrestazure.azure_exceptions import CloudError -from msrest.exceptions import DeserializationError -from msrestazure.azure_operation import AzureOperationPoller +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling from .. import models @@ -95,7 +95,7 @@ def _create_or_update_initial( return deserialized def create_or_update( - self, resource_group_name, server_name, firewall_rule_name, start_ip_address, end_ip_address, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, server_name, firewall_rule_name, start_ip_address, end_ip_address, custom_headers=None, raw=False, polling=True, **operation_config): """Creates a new firewall rule or updates an existing firewall rule. :param resource_group_name: The name of the resource group that @@ -113,13 +113,16 @@ def create_or_update( Must be IPv4 format. :type end_ip_address: str :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns FirewallRule - or ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns FirewallRule or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.rdbms.postgresql.models.FirewallRule] - or ~msrest.pipeline.ClientRawResponse + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.rdbms.postgresql.models.FirewallRule]] :raises: :class:`CloudError` """ raw_result = self._create_or_update_initial( @@ -132,30 +135,8 @@ def create_or_update( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200, 201, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - deserialized = self._deserialize('FirewallRule', response) if raw: @@ -164,12 +145,13 @@ def get_long_running_output(response): return deserialized - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/servers/{serverName}/firewallRules/{firewallRuleName}'} @@ -213,7 +195,7 @@ def _delete_initial( return client_raw_response def delete( - self, resource_group_name, server_name, firewall_rule_name, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, server_name, firewall_rule_name, custom_headers=None, raw=False, polling=True, **operation_config): """Deletes a server firewall rule. :param resource_group_name: The name of the resource group that @@ -225,12 +207,14 @@ def delete( :param firewall_rule_name: The name of the server firewall rule. :type firewall_rule_name: str :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns None or - ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or - ~msrest.pipeline.ClientRawResponse + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] :raises: :class:`CloudError` """ raw_result = self._delete_initial( @@ -241,40 +225,19 @@ def delete( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200, 202, 204]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/servers/{serverName}/firewallRules/{firewallRuleName}'} def get( diff --git a/src/rdbms/azext_rdbms/postgresql/operations/servers_operations.py b/src/rdbms/azext_rdbms/postgresql/operations/servers_operations.py index c6944576af8..4228e0f25cd 100644 --- a/src/rdbms/azext_rdbms/postgresql/operations/servers_operations.py +++ b/src/rdbms/azext_rdbms/postgresql/operations/servers_operations.py @@ -12,8 +12,8 @@ import uuid from msrest.pipeline import ClientRawResponse from msrestazure.azure_exceptions import CloudError -from msrest.exceptions import DeserializationError -from msrestazure.azure_operation import AzureOperationPoller +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling from .. import models @@ -92,7 +92,7 @@ def _create_initial( return deserialized def create( - self, resource_group_name, server_name, parameters, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, server_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): """Creates a new server, or will overwrite an existing server. :param resource_group_name: The name of the resource group that @@ -105,13 +105,16 @@ def create( server. :type parameters: ~azure.mgmt.rdbms.postgresql.models.ServerForCreate :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns Server or - ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Server or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.rdbms.postgresql.models.Server] - or ~msrest.pipeline.ClientRawResponse + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.rdbms.postgresql.models.Server]] :raises: :class:`CloudError` """ raw_result = self._create_initial( @@ -122,30 +125,8 @@ def create( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200, 201, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - deserialized = self._deserialize('Server', response) if raw: @@ -154,12 +135,13 @@ def get_long_running_output(response): return deserialized - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) create.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/servers/{serverName}'} @@ -213,7 +195,7 @@ def _update_initial( return deserialized def update( - self, resource_group_name, server_name, parameters, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, server_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): """Updates an existing server. The request body can contain one to many of the properties present in the normal server definition. @@ -227,13 +209,16 @@ def update( :type parameters: ~azure.mgmt.rdbms.postgresql.models.ServerUpdateParameters :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns Server or - ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Server or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.rdbms.postgresql.models.Server] - or ~msrest.pipeline.ClientRawResponse + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.rdbms.postgresql.models.Server]] :raises: :class:`CloudError` """ raw_result = self._update_initial( @@ -244,30 +229,8 @@ def update( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200, 202]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - deserialized = self._deserialize('Server', response) if raw: @@ -276,12 +239,13 @@ def get_long_running_output(response): return deserialized - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/servers/{serverName}'} @@ -324,7 +288,7 @@ def _delete_initial( return client_raw_response def delete( - self, resource_group_name, server_name, custom_headers=None, raw=False, **operation_config): + self, resource_group_name, server_name, custom_headers=None, raw=False, polling=True, **operation_config): """Deletes a server. :param resource_group_name: The name of the resource group that @@ -334,12 +298,14 @@ def delete( :param server_name: The name of the server. :type server_name: str :param dict custom_headers: headers that will be added to the request - :param bool raw: returns the direct response alongside the - deserialized response - :return: An instance of AzureOperationPoller that returns None or - ClientRawResponse if raw=true + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or - ~msrest.pipeline.ClientRawResponse + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] :raises: :class:`CloudError` """ raw_result = self._delete_initial( @@ -349,40 +315,19 @@ def delete( raw=True, **operation_config ) - if raw: - return raw_result - - # Construct and send request - def long_running_send(): - return raw_result.response - - def get_long_running_status(status_link, headers=None): - - request = self._client.get(status_link) - if headers: - request.headers.update(headers) - header_parameters = {} - header_parameters['x-ms-client-request-id'] = raw_result.response.request.headers['x-ms-client-request-id'] - return self._client.send( - request, header_parameters, stream=False, **operation_config) def get_long_running_output(response): - - if response.status_code not in [200, 202, 204]: - exp = CloudError(response) - exp.request_id = response.headers.get('x-ms-request-id') - raise exp - if raw: client_raw_response = ClientRawResponse(None, response) return client_raw_response - long_running_operation_timeout = operation_config.get( + lro_delay = operation_config.get( 'long_running_operation_timeout', self.config.long_running_operation_timeout) - return AzureOperationPoller( - long_running_send, get_long_running_output, - get_long_running_status, long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/servers/{serverName}'} def get( diff --git a/src/rdbms/azext_rdbms/postgresql/version.py b/src/rdbms/azext_rdbms/postgresql/version.py index fb0159ed93d..220ef6ab5ec 100644 --- a/src/rdbms/azext_rdbms/postgresql/version.py +++ b/src/rdbms/azext_rdbms/postgresql/version.py @@ -9,4 +9,4 @@ # regenerated. # -------------------------------------------------------------------------- -VERSION = "0.1.0" +VERSION = "2017-12-01" diff --git a/src/rdbms/azext_rdbms/tests/recordings/test_mysql_proxy_resources_mgmt.yaml b/src/rdbms/azext_rdbms/tests/recordings/test_mysql_proxy_resources_mgmt.yaml deleted file mode 100644 index 1319b7e5756..00000000000 --- a/src/rdbms/azext_rdbms/tests/recordings/test_mysql_proxy_resources_mgmt.yaml +++ /dev/null @@ -1,1326 +0,0 @@ -interactions: -- request: - body: '{"location": "westus", "tags": {"use": "az-test"}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [group create] - Connection: [keep-alive] - Content-Length: ['50'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 resourcemanagementclient/1.2.1 Azure-SDK-For-Python - AZURECLI/2.0.30] - accept-language: [en-US] - method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/clitest.rg000001?api-version=2017-05-10 - response: - body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001","name":"clitest.rg000001","location":"westus","tags":{"use":"az-test"},"properties":{"provisioningState":"Succeeded"}}'} - headers: - cache-control: [no-cache] - content-length: ['328'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:42:29 GMT'] - expires: ['-1'] - pragma: [no-cache] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] - status: {code: 201, message: Created} -- request: - body: '{"sku": {"name": "GP_Gen4_2"}, "properties": {"storageProfile": {}, "createMode": - "Default", "administratorLogin": "cloudsa", "administratorLoginPassword": "SecretPassword123"}, - "location": "brazilsouth"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server create] - Connection: [keep-alive] - Content-Length: ['204'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002?api-version=2017-12-01 - response: - body: {string: '{"operation":"UpsertElasticServer","startTime":"2018-03-19T23:42:31.587Z"}'} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/6657b7af-9738-4815-b082-38a0a96407c2?api-version=2017-12-01'] - cache-control: [no-cache] - content-length: ['74'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:42:31 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/operationResults/6657b7af-9738-4815-b082-38a0a96407c2?api-version=2017-12-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server create] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/6657b7af-9738-4815-b082-38a0a96407c2?api-version=2017-12-01 - response: - body: {string: '{"name":"6657b7af-9738-4815-b082-38a0a96407c2","status":"InProgress","startTime":"2018-03-19T23:42:31.587Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:43:32 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server create] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/6657b7af-9738-4815-b082-38a0a96407c2?api-version=2017-12-01 - response: - body: {string: '{"name":"6657b7af-9738-4815-b082-38a0a96407c2","status":"Succeeded","startTime":"2018-03-19T23:42:31.587Z"}'} - headers: - cache-control: [no-cache] - content-length: ['107'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:44:33 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server create] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002?api-version=2017-12-01 - response: - body: {string: '{"sku":{"name":"GP_Gen4_2","tier":"GeneralPurpose","family":"Gen4","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"5.7","sslEnforcement":"Enabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000002.mysql.database.azure.com","earliestRestoreDate":"2018-03-19T23:52:31.947+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"brazilsouth","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002","name":"azuredbclitest000002","type":"Microsoft.DBforMySQL/servers"}'} - headers: - cache-control: [no-cache] - content-length: ['916'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:44:35 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: '{"properties": {"startIpAddress": "0.0.0.0", "endIpAddress": "255.255.255.255"}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server firewall-rule create] - Connection: [keep-alive] - Content-Length: ['80'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/firewallRules/rule1?api-version=2017-12-01 - response: - body: {string: '{"operation":"UpsertElasticServerFirewallRules","startTime":"2018-03-19T23:44:37.807Z"}'} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/e610f4df-f04f-4bd2-841f-a943b74dc426?api-version=2017-12-01'] - cache-control: [no-cache] - content-length: ['87'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:44:37 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/operationResults/e610f4df-f04f-4bd2-841f-a943b74dc426?api-version=2017-12-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server firewall-rule create] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/e610f4df-f04f-4bd2-841f-a943b74dc426?api-version=2017-12-01 - response: - body: {string: '{"name":"e610f4df-f04f-4bd2-841f-a943b74dc426","status":"Succeeded","startTime":"2018-03-19T23:44:37.807Z"}'} - headers: - cache-control: [no-cache] - content-length: ['107'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:44:53 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server firewall-rule create] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/firewallRules/rule1?api-version=2017-12-01 - response: - body: {string: '{"properties":{"startIpAddress":"0.0.0.0","endIpAddress":"255.255.255.255"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/firewallRules/rule1","name":"rule1","type":"Microsoft.DBforMySQL/servers/firewallRules"}'} - headers: - cache-control: [no-cache] - content-length: ['416'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:44:55 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server firewall-rule show] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/firewallRules/rule1?api-version=2017-12-01 - response: - body: {string: '{"properties":{"startIpAddress":"0.0.0.0","endIpAddress":"255.255.255.255"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/firewallRules/rule1","name":"rule1","type":"Microsoft.DBforMySQL/servers/firewallRules"}'} - headers: - cache-control: [no-cache] - content-length: ['416'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:44:56 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server firewall-rule update] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/firewallRules/rule1?api-version=2017-12-01 - response: - body: {string: '{"properties":{"startIpAddress":"0.0.0.0","endIpAddress":"255.255.255.255"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/firewallRules/rule1","name":"rule1","type":"Microsoft.DBforMySQL/servers/firewallRules"}'} - headers: - cache-control: [no-cache] - content-length: ['416'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:44:58 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: '{"properties": {"startIpAddress": "123.123.123.123", "endIpAddress": "123.123.123.124"}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server firewall-rule update] - Connection: [keep-alive] - Content-Length: ['88'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/firewallRules/rule1?api-version=2017-12-01 - response: - body: {string: '{"operation":"UpsertElasticServerFirewallRules","startTime":"2018-03-19T23:45:00.72Z"}'} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/d7db5cd1-980f-446c-968f-7bb69d3019e5?api-version=2017-12-01'] - cache-control: [no-cache] - content-length: ['86'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:44:59 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/operationResults/d7db5cd1-980f-446c-968f-7bb69d3019e5?api-version=2017-12-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server firewall-rule update] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/d7db5cd1-980f-446c-968f-7bb69d3019e5?api-version=2017-12-01 - response: - body: {string: '{"name":"d7db5cd1-980f-446c-968f-7bb69d3019e5","status":"Succeeded","startTime":"2018-03-19T23:45:00.72Z"}'} - headers: - cache-control: [no-cache] - content-length: ['106'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:45:17 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server firewall-rule update] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/firewallRules/rule1?api-version=2017-12-01 - response: - body: {string: '{"properties":{"startIpAddress":"123.123.123.123","endIpAddress":"123.123.123.124"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/firewallRules/rule1","name":"rule1","type":"Microsoft.DBforMySQL/servers/firewallRules"}'} - headers: - cache-control: [no-cache] - content-length: ['424'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:45:17 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server firewall-rule update] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/firewallRules/rule1?api-version=2017-12-01 - response: - body: {string: '{"properties":{"startIpAddress":"123.123.123.123","endIpAddress":"123.123.123.124"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/firewallRules/rule1","name":"rule1","type":"Microsoft.DBforMySQL/servers/firewallRules"}'} - headers: - cache-control: [no-cache] - content-length: ['424'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:45:20 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: '{"properties": {"startIpAddress": "0.0.0.0", "endIpAddress": "123.123.123.124"}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server firewall-rule update] - Connection: [keep-alive] - Content-Length: ['80'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/firewallRules/rule1?api-version=2017-12-01 - response: - body: {string: '{"operation":"UpsertElasticServerFirewallRules","startTime":"2018-03-19T23:45:22.237Z"}'} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/a845a557-214f-4a99-b6c1-f388a5d8054d?api-version=2017-12-01'] - cache-control: [no-cache] - content-length: ['87'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:45:21 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/operationResults/a845a557-214f-4a99-b6c1-f388a5d8054d?api-version=2017-12-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server firewall-rule update] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/a845a557-214f-4a99-b6c1-f388a5d8054d?api-version=2017-12-01 - response: - body: {string: '{"name":"a845a557-214f-4a99-b6c1-f388a5d8054d","status":"Succeeded","startTime":"2018-03-19T23:45:22.237Z"}'} - headers: - cache-control: [no-cache] - content-length: ['107'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:45:38 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server firewall-rule update] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/firewallRules/rule1?api-version=2017-12-01 - response: - body: {string: '{"properties":{"startIpAddress":"0.0.0.0","endIpAddress":"123.123.123.124"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/firewallRules/rule1","name":"rule1","type":"Microsoft.DBforMySQL/servers/firewallRules"}'} - headers: - cache-control: [no-cache] - content-length: ['416'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:45:39 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server firewall-rule update] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/firewallRules/rule1?api-version=2017-12-01 - response: - body: {string: '{"properties":{"startIpAddress":"0.0.0.0","endIpAddress":"123.123.123.124"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/firewallRules/rule1","name":"rule1","type":"Microsoft.DBforMySQL/servers/firewallRules"}'} - headers: - cache-control: [no-cache] - content-length: ['416'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:45:41 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: '{"properties": {"startIpAddress": "0.0.0.0", "endIpAddress": "255.255.255.255"}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server firewall-rule update] - Connection: [keep-alive] - Content-Length: ['80'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/firewallRules/rule1?api-version=2017-12-01 - response: - body: {string: '{"operation":"UpsertElasticServerFirewallRules","startTime":"2018-03-19T23:45:43.633Z"}'} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/8937cb3a-1e70-438f-ba3b-bbb889c8ab13?api-version=2017-12-01'] - cache-control: [no-cache] - content-length: ['87'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:45:42 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/operationResults/8937cb3a-1e70-438f-ba3b-bbb889c8ab13?api-version=2017-12-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server firewall-rule update] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/8937cb3a-1e70-438f-ba3b-bbb889c8ab13?api-version=2017-12-01 - response: - body: {string: '{"name":"8937cb3a-1e70-438f-ba3b-bbb889c8ab13","status":"Succeeded","startTime":"2018-03-19T23:45:43.633Z"}'} - headers: - cache-control: [no-cache] - content-length: ['107'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:45:59 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server firewall-rule update] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/firewallRules/rule1?api-version=2017-12-01 - response: - body: {string: '{"properties":{"startIpAddress":"0.0.0.0","endIpAddress":"255.255.255.255"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/firewallRules/rule1","name":"rule1","type":"Microsoft.DBforMySQL/servers/firewallRules"}'} - headers: - cache-control: [no-cache] - content-length: ['416'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:46:00 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: '{"properties": {"startIpAddress": "123.123.123.123", "endIpAddress": "123.123.123.124"}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server firewall-rule create] - Connection: [keep-alive] - Content-Length: ['88'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/firewallRules/rule2?api-version=2017-12-01 - response: - body: {string: '{"operation":"UpsertElasticServerFirewallRules","startTime":"2018-03-19T23:46:03.56Z"}'} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/0af8db9e-06a5-460b-8433-ceada1474309?api-version=2017-12-01'] - cache-control: [no-cache] - content-length: ['86'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:46:02 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/operationResults/0af8db9e-06a5-460b-8433-ceada1474309?api-version=2017-12-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server firewall-rule create] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/0af8db9e-06a5-460b-8433-ceada1474309?api-version=2017-12-01 - response: - body: {string: '{"name":"0af8db9e-06a5-460b-8433-ceada1474309","status":"Succeeded","startTime":"2018-03-19T23:46:03.56Z"}'} - headers: - cache-control: [no-cache] - content-length: ['106'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:46:19 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server firewall-rule create] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/firewallRules/rule2?api-version=2017-12-01 - response: - body: {string: '{"properties":{"startIpAddress":"123.123.123.123","endIpAddress":"123.123.123.124"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/firewallRules/rule2","name":"rule2","type":"Microsoft.DBforMySQL/servers/firewallRules"}'} - headers: - cache-control: [no-cache] - content-length: ['424'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:46:20 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server firewall-rule list] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/firewallRules?api-version=2017-12-01 - response: - body: {string: '{"value":[{"properties":{"startIpAddress":"0.0.0.0","endIpAddress":"255.255.255.255"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/firewallRules/rule1","name":"rule1","type":"Microsoft.DBforMySQL/servers/firewallRules"},{"properties":{"startIpAddress":"123.123.123.123","endIpAddress":"123.123.123.124"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/firewallRules/rule2","name":"rule2","type":"Microsoft.DBforMySQL/servers/firewallRules"}]}'} - headers: - cache-control: [no-cache] - content-length: ['853'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:46:23 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server firewall-rule delete] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/firewallRules/rule1?api-version=2017-12-01 - response: - body: {string: '{"operation":"DropElasticServerFirewallRule","startTime":"2018-03-19T23:46:24.89Z"}'} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/8162e448-041d-4269-83a9-22134dfa09a3?api-version=2017-12-01'] - cache-control: [no-cache] - content-length: ['83'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:46:24 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/operationResults/8162e448-041d-4269-83a9-22134dfa09a3?api-version=2017-12-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server firewall-rule delete] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/8162e448-041d-4269-83a9-22134dfa09a3?api-version=2017-12-01 - response: - body: {string: '{"name":"8162e448-041d-4269-83a9-22134dfa09a3","status":"Succeeded","startTime":"2018-03-19T23:46:24.89Z"}'} - headers: - cache-control: [no-cache] - content-length: ['106'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:46:40 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server firewall-rule list] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/firewallRules?api-version=2017-12-01 - response: - body: {string: '{"value":[{"properties":{"startIpAddress":"123.123.123.123","endIpAddress":"123.123.123.124"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/firewallRules/rule2","name":"rule2","type":"Microsoft.DBforMySQL/servers/firewallRules"}]}'} - headers: - cache-control: [no-cache] - content-length: ['436'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:46:42 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server firewall-rule delete] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/firewallRules/rule2?api-version=2017-12-01 - response: - body: {string: '{"operation":"DropElasticServerFirewallRule","startTime":"2018-03-19T23:46:45.493Z"}'} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/0941fcfe-3dcb-4b93-b28b-576c1a0b26af?api-version=2017-12-01'] - cache-control: [no-cache] - content-length: ['84'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:46:45 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/operationResults/0941fcfe-3dcb-4b93-b28b-576c1a0b26af?api-version=2017-12-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server firewall-rule delete] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/0941fcfe-3dcb-4b93-b28b-576c1a0b26af?api-version=2017-12-01 - response: - body: {string: '{"name":"0941fcfe-3dcb-4b93-b28b-576c1a0b26af","status":"Succeeded","startTime":"2018-03-19T23:46:45.493Z"}'} - headers: - cache-control: [no-cache] - content-length: ['107'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:47:01 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server firewall-rule list] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/firewallRules?api-version=2017-12-01 - response: - body: {string: '{"value":[]}'} - headers: - cache-control: [no-cache] - content-length: ['12'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:47:03 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql db list] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/databases?api-version=2017-12-01 - response: - body: {string: '{"value":[{"properties":{"charset":"utf8","collation":"utf8_general_ci"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/databases/information_schema","name":"information_schema","type":"Microsoft.DBforMySQL/servers/databases"},{"properties":{"charset":"latin1","collation":"latin1_swedish_ci"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/databases/mysql","name":"mysql","type":"Microsoft.DBforMySQL/servers/databases"},{"properties":{"charset":"utf8","collation":"utf8_general_ci"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/databases/performance_schema","name":"performance_schema","type":"Microsoft.DBforMySQL/servers/databases"},{"properties":{"charset":"utf8","collation":"utf8_general_ci"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/databases/sys","name":"sys","type":"Microsoft.DBforMySQL/servers/databases"}]}'} - headers: - cache-control: [no-cache] - content-length: ['1647'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:47:05 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server configuration show] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/log_slow_admin_statements?api-version=2017-12-01 - response: - body: {string: '{"properties":{"value":"OFF","description":"Include slow administrative - statements in the statements written to the slow query log.","defaultValue":"OFF","dataType":"Enumeration","allowedValues":"ON,OFF","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/log_slow_admin_statements","name":"log_slow_admin_statements","type":"Microsoft.DBforMySQL/servers/configurations"}'} - headers: - cache-control: [no-cache] - content-length: ['613'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:47:06 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: '{"properties": {"value": "ON"}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server configuration set] - Connection: [keep-alive] - Content-Length: ['31'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/log_slow_admin_statements?api-version=2017-12-01 - response: - body: {string: '{"operation":"UpdateElasticServerConfig","startTime":"2018-03-19T23:47:09.307Z"}'} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/b8a7c779-05bd-4ef1-87d9-7749eabcbdd1?api-version=2017-12-01'] - cache-control: [no-cache] - content-length: ['80'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:47:09 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/operationResults/b8a7c779-05bd-4ef1-87d9-7749eabcbdd1?api-version=2017-12-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server configuration set] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/b8a7c779-05bd-4ef1-87d9-7749eabcbdd1?api-version=2017-12-01 - response: - body: {string: '{"name":"b8a7c779-05bd-4ef1-87d9-7749eabcbdd1","status":"Succeeded","startTime":"2018-03-19T23:47:09.307Z"}'} - headers: - cache-control: [no-cache] - content-length: ['107'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:47:25 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server configuration set] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/log_slow_admin_statements?api-version=2017-12-01 - response: - body: {string: '{"properties":{"value":"ON","description":"Include slow administrative - statements in the statements written to the slow query log.","defaultValue":"OFF","dataType":"Enumeration","allowedValues":"ON,OFF","source":"user-override"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/log_slow_admin_statements","name":"log_slow_admin_statements","type":"Microsoft.DBforMySQL/servers/configurations"}'} - headers: - cache-control: [no-cache] - content-length: ['611'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:47:26 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: '{"properties": {"source": "system-default"}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server configuration set] - Connection: [keep-alive] - Content-Length: ['44'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/log_slow_admin_statements?api-version=2017-12-01 - response: - body: {string: '{"operation":"UpdateElasticServerConfig","startTime":"2018-03-19T23:47:29.163Z"}'} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/2dcc625a-2ef5-42b6-b36c-f8797e59d64a?api-version=2017-12-01'] - cache-control: [no-cache] - content-length: ['80'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:47:29 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/operationResults/2dcc625a-2ef5-42b6-b36c-f8797e59d64a?api-version=2017-12-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server configuration set] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/2dcc625a-2ef5-42b6-b36c-f8797e59d64a?api-version=2017-12-01 - response: - body: {string: '{"name":"2dcc625a-2ef5-42b6-b36c-f8797e59d64a","status":"Succeeded","startTime":"2018-03-19T23:47:29.163Z"}'} - headers: - cache-control: [no-cache] - content-length: ['107'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:47:45 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server configuration set] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/log_slow_admin_statements?api-version=2017-12-01 - response: - body: {string: '{"properties":{"value":"OFF","description":"Include slow administrative - statements in the statements written to the slow query log.","defaultValue":"OFF","dataType":"Enumeration","allowedValues":"ON,OFF","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/log_slow_admin_statements","name":"log_slow_admin_statements","type":"Microsoft.DBforMySQL/servers/configurations"}'} - headers: - cache-control: [no-cache] - content-length: ['613'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:47:46 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server configuration list] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations?api-version=2017-12-01 - response: - body: {string: '{"value":[{"properties":{"value":"OFF","description":"Indicates - the status of the Event Scheduler.","defaultValue":"OFF","dataType":"Enumeration","allowedValues":"ON,OFF,DISABLED","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/event_scheduler","name":"event_scheduler","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"4","description":"Number - of digits by which to increase the scale of the result of division operations.","defaultValue":"4","dataType":"Integer","allowedValues":"0-30","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/div_precision_increment","name":"div_precision_increment","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"1024","description":"Maximum - allowed result length in bytes for the GROUP_CONCAT().","defaultValue":"1024","dataType":"Integer","allowedValues":"4-16777216","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/group_concat_max_len","name":"group_concat_max_len","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"ON","description":"Whether - innodb adaptive hash indexes are enabled or disabled.","defaultValue":"ON","dataType":"Enumeration","allowedValues":"ON,OFF","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/innodb_adaptive_hash_index","name":"innodb_adaptive_hash_index","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"50","description":"The - length of time in seconds an InnoDB transaction waits for a row lock before - giving up.","defaultValue":"50","dataType":"Integer","allowedValues":"1-3600","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/innodb_lock_wait_timeout","name":"innodb_lock_wait_timeout","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"1800","description":"Number - of seconds the server waits for activity on an interactive connection before - closing it.","defaultValue":"1800","dataType":"Integer","allowedValues":"10-1800","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/interactive_timeout","name":"interactive_timeout","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"OFF","description":"Logs - queries that are expected to retrieve all rows to slow query log.","defaultValue":"OFF","dataType":"Enumeration","allowedValues":"ON,OFF","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/log_queries_not_using_indexes","name":"log_queries_not_using_indexes","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"0","description":"Limits - the number of such queries per minute that can be written to the slow query - log.","defaultValue":"0","dataType":"Integer","allowedValues":"0-4294967295","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/log_throttle_queries_not_using_indexes","name":"log_throttle_queries_not_using_indexes","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"OFF","description":"Include - slow administrative statements in the statements written to the slow query - log.","defaultValue":"OFF","dataType":"Enumeration","allowedValues":"ON,OFF","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/log_slow_admin_statements","name":"log_slow_admin_statements","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"OFF","description":"When - the slow query log is enabled, this variable enables logging for queries that - have taken more than long_query_time seconds to execute on the slave.","defaultValue":"OFF","dataType":"Enumeration","allowedValues":"ON,OFF","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/log_slow_slave_statements","name":"log_slow_slave_statements","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"OFF","description":"This - variable applies when binary logging is enabled. It controls whether stored - function creators can be trusted not to create stored functions that will - cause unsafe events to be written to the binary log.","defaultValue":"OFF","dataType":"Enumeration","allowedValues":"ON,OFF","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/log_bin_trust_function_creators","name":"log_bin_trust_function_creators","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"10","description":"If - a query takes longer than this many seconds, the server increments the Slow_queries - status variable.","defaultValue":"10","dataType":"Numeric","allowedValues":"0-1E+100","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/long_query_time","name":"long_query_time","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"0","description":"Can - be used to cause queries which examine fewer than the stated number of rows - not to be logged.","defaultValue":"0","dataType":"Integer","allowedValues":"0-18446744073709551615","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/min_examined_row_limit","name":"min_examined_row_limit","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"OFF","description":"Enable - or disable the slow query log","defaultValue":"OFF","dataType":"Enumeration","allowedValues":"ON,OFF","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/slow_query_log","name":"slow_query_log","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"","description":"The - current server SQL mode.","defaultValue":"","dataType":"Set","allowedValues":",ALLOW_INVALID_DATES,ANSI_QUOTES,ERROR_FOR_DIVISION_BY_ZERO,HIGH_NOT_PRECEDENCE,IGNORE_SPACE,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_BACKSLASH_ESCAPES,NO_DIR_IN_CREATE,NO_ENGINE_SUBSTITUTION,NO_FIELD_OPTIONS,NO_KEY_OPTIONS,NO_TABLE_OPTIONS,NO_UNSIGNED_SUBTRACTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,ONLY_FULL_GROUP_BY,PAD_CHAR_TO_FULL_LENGTH,PIPES_AS_CONCAT,REAL_AS_FLOAT,STRICT_ALL_TABLES,STRICT_TRANS_TABLES","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/sql_mode","name":"sql_mode","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"120","description":"The - number of seconds the server waits for activity on a noninteractive connection - before closing it.","defaultValue":"120","dataType":"Integer","allowedValues":"60-86400","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/wait_timeout","name":"wait_timeout","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"120","description":"The - number of seconds the server waits for network reading action, especially - for LOAD DATA LOCAL FILE.","defaultValue":"120","dataType":"Integer","allowedValues":"10-3600","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/net_read_timeout","name":"net_read_timeout","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"240","description":"The - number of seconds the server waits for network writing action, especially - for LOAD DATA LOCAL FILE.","defaultValue":"240","dataType":"Integer","allowedValues":"10-3600","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/net_write_timeout","name":"net_write_timeout","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"3408824671","description":"The - server ID, used in replication to give each master and slave a unique identity.","defaultValue":"1000","dataType":"Integer","allowedValues":"1000-4294967295","source":"user-override"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/server_id","name":"server_id","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"536870912","description":"The - maximum size of one packet or any generated/intermediate string, or any parameter - sent by the mysql_stmt_send_long_data() C API function.","defaultValue":"536870912","dataType":"Integer","allowedValues":"1024-1073741824","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/max_allowed_packet","name":"max_allowed_packet","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"60","description":"The - number of seconds to wait for more data from the master before the slave considers - the connection broken, aborts the read, and tries to reconnect.","defaultValue":"60","dataType":"Integer","allowedValues":"30-3600","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/slave_net_timeout","name":"slave_net_timeout","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"SYSTEM","description":"The - server time zone","defaultValue":"SYSTEM","dataType":"String","allowedValues":"[+|-][0]{0,1}[0-9]:[0-5][0-9]|[+|-][1][0-2]:[0-5][0-9]|SYSTEM","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/time_zone","name":"time_zone","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"1000","description":"Controls - how many microseconds the binary log commit waits before synchronizing the - binary log file to disk.","defaultValue":"1000","dataType":"Integer","allowedValues":"0,11-1000000","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/binlog_group_commit_sync_delay","name":"binlog_group_commit_sync_delay","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"0","description":"The - maximum number of transactions to wait for before aborting the current delay - as specified by binlog-group-commit-sync-delay.","defaultValue":"0","dataType":"Integer","allowedValues":"0-1000000","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/binlog_group_commit_sync_no_delay_count","name":"binlog_group_commit_sync_no_delay_count","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"latin1","description":"Use - charset_name as the default server character set.","defaultValue":"latin1","dataType":"Enumeration","allowedValues":"BIG5,DEC8,CP850,HP8,KOI8R,LATIN1,LATIN2,SWE7,ASCII,UJIS,SJIS,HEBREW,TIS620,EUCKR,KOI8U,GB2312,GREEK,CP1250,GBK,LATIN5,ARMSCII8,UTF8,UCS2,CP866,KEYBCS2,MACCE,MACROMAN,CP852,LATIN7,UTF8MB4,CP1251,UTF16,CP1256,CP1257,UTF32,BINARY,GEOSTD8,CP932,EUCJPMS","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/character_set_server","name":"character_set_server","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"262144","description":"The - minimum size of the buffer that is used for plain index scans, range index - scans, and joins that do not use indexes and thus perform full table scans.","defaultValue":"262144","dataType":"Integer","allowedValues":"128-2097152","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/join_buffer_size","name":"join_buffer_size","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"2000","description":"The - number of open tables for all threads.","defaultValue":"2000","dataType":"Integer","allowedValues":"1-4000","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/table_open_cache","name":"table_open_cache","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"OFF","description":"InnoDB - stores the data and indexes for each newly created table in a separate .ibd - file instead of the system tablespace.","defaultValue":"OFF","dataType":"Enumeration","allowedValues":"ON,OFF","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/innodb_file_per_table","name":"innodb_file_per_table","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"1","description":"If - set to 1, table names are stored in lowercase on disk and comparisons are - not case sensitive. If set to 2, table names are stored as given but compared - in lowercase.","defaultValue":"1","dataType":"Enumeration","allowedValues":"1,2","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/lower_case_table_names","name":"lower_case_table_names","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"OFF","description":"This - option places an upper limit on the total size in bytes of all relay logs - on the slave.","defaultValue":"OFF","dataType":"Enumeration","allowedValues":"ON,OFF","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/slave_compressed_protocol","name":"slave_compressed_protocol","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"200","description":"Sets - an upper limit on I/O activity performed by InnoDB background tasks, such - as flushing pages from the buffer pool and merging data from the change buffer.","defaultValue":"200","dataType":"Integer","allowedValues":"100-1500","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/innodb_io_capacity","name":"innodb_io_capacity","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"4","description":"The - number of I/O threads for read operations in InnoDB.","defaultValue":"4","dataType":"Integer","allowedValues":"1-64","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/innodb_read_io_threads","name":"innodb_read_io_threads","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"0","description":"InnoDB - tries to keep the number of operating system threads concurrently inside InnoDB - less than or equal to the limit given by this variable.","defaultValue":"0","dataType":"Integer","allowedValues":"0-1000","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/innodb_thread_concurrency","name":"innodb_thread_concurrency","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"4","description":"The - number of I/O threads for write operations in InnoDB.","defaultValue":"4","dataType":"Integer","allowedValues":"1-64","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/innodb_write_io_threads","name":"innodb_write_io_threads","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"4","description":"The - number of page cleaner threads that flush dirty pages from buffer pool instances.","defaultValue":"4","dataType":"Integer","allowedValues":"1-64","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/innodb_page_cleaners","name":"innodb_page_cleaners","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"134217728","description":"Specifies - an upper limit on the size of the temporary log files used during online DDL - operations for InnoDB tables.","defaultValue":"134217728","dataType":"Integer","allowedValues":"65536-2147483648","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/innodb_online_alter_log_max_size","name":"innodb_online_alter_log_max_size","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"","description":"A - string to be executed by the server for each client that connects.","defaultValue":"","dataType":"String","allowedValues":"","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/init_connect","name":"init_connect","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"REPEATABLE-READ","description":"The - default transaction isolation level.","defaultValue":"REPEATABLE-READ","dataType":"Enumeration","allowedValues":"READ-UNCOMMITTED,READ-COMMITTED,REPEATABLE-READ,SERIALIZABLE","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/tx_isolation","name":"tx_isolation","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"200","description":"This - variable indicates the number of equality ranges in an equality comparison - condition when the optimizer should switch from using index dives to index - statistics in estimating the number of qualifying rows.","defaultValue":"200","dataType":"Integer","allowedValues":"0-4294967295","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/eq_range_index_dive_limit","name":"eq_range_index_dive_limit","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"37","description":"Specifies - the approximate percentage of the InnoDB buffer pool used for the old block - sublist.","defaultValue":"37","dataType":"Integer","allowedValues":"5-95","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/innodb_old_blocks_pct","name":"innodb_old_blocks_pct","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"1000","description":"Non-zero - values protect against the buffer pool being filled by data that is referenced - only for a brief period, such as during a full table scan.","defaultValue":"1000","dataType":"Integer","allowedValues":"0-4294967295","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/innodb_old_blocks_time","name":"innodb_old_blocks_time","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"56","description":"Controls - the sensitivity of linear read-ahead that InnoDB uses to prefetch pages into - the buffer pool.","defaultValue":"56","dataType":"Integer","allowedValues":"0-64","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/innodb_read_ahead_threshold","name":"innodb_read_ahead_threshold","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"1024","description":"The - cutoff on the size of index values that determines which filesort algorithm - to use.","defaultValue":"1024","dataType":"Integer","allowedValues":"4-8388608","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/max_length_for_sort_data","name":"max_length_for_sort_data","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"100","description":"If - more than this many successive connection requests from a host are interrupted - without a successful connection, the server blocks that host from further - connections.","defaultValue":"100","dataType":"Integer","allowedValues":"1-18446744073709551615","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/max_connect_errors","name":"max_connect_errors","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"10000","description":"Defines - how long InnoDB threads sleep before joining the InnoDB queue, in microseconds.","defaultValue":"10000","dataType":"Integer","allowedValues":"0-1000000","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/innodb_thread_sleep_delay","name":"innodb_thread_sleep_delay","type":"Microsoft.DBforMySQL/servers/configurations"},{"properties":{"value":"Barracuda","description":"Indicates - the InnoDB file format for file-per-table tablespaces.","defaultValue":"Barracuda","dataType":"Enumeration","allowedValues":"Antelope,Barracuda","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/innodb_file_format","name":"innodb_file_format","type":"Microsoft.DBforMySQL/servers/configurations"}]}'} - headers: - cache-control: [no-cache] - content-length: ['29202'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:47:48 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: '{"properties": {"value": "ON"}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server configuration set] - Connection: [keep-alive] - Content-Length: ['31'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/slow_query_log?api-version=2017-12-01 - response: - body: {string: '{"operation":"UpdateElasticServerConfig","startTime":"2018-03-19T23:47:51.007Z"}'} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/3389c153-3d16-43d1-93b8-55d2a6442fd2?api-version=2017-12-01'] - cache-control: [no-cache] - content-length: ['80'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:47:50 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/operationResults/3389c153-3d16-43d1-93b8-55d2a6442fd2?api-version=2017-12-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server configuration set] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/3389c153-3d16-43d1-93b8-55d2a6442fd2?api-version=2017-12-01 - response: - body: {string: '{"name":"3389c153-3d16-43d1-93b8-55d2a6442fd2","status":"Succeeded","startTime":"2018-03-19T23:47:51.007Z"}'} - headers: - cache-control: [no-cache] - content-length: ['107'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:48:06 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server configuration set] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/slow_query_log?api-version=2017-12-01 - response: - body: {string: '{"properties":{"value":"ON","description":"Enable or disable the - slow query log","defaultValue":"OFF","dataType":"Enumeration","allowedValues":"ON,OFF","source":"user-override"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/configurations/slow_query_log","name":"slow_query_log","type":"Microsoft.DBforMySQL/servers/configurations"}'} - headers: - cache-control: [no-cache] - content-length: ['538'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:48:08 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server-logs list] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/logFiles?api-version=2017-12-01 - response: - body: {string: '{"value":[{"properties":{"name":"mysql-slow-azuredbclitest000002-2018031923.log","sizeInKB":1,"createdTime":"0001-01-01T00:00:00+00:00","lastModifiedTime":"2018-03-19T23:47:51+00:00","type":"slowlog","url":"https://wasd2prodbrso1fse33.file.core.windows.net/6dcdcd23be7941e9aa02fbbd0f730ac5/serverlogs/mysql-slow-azuredbclitest000002-2018031923.log?sv=2015-04-05&sr=f&sig=uxpv%2BcRwDQeygvziwCZvJhmCZSt4kAV3Q7WdvBtTJv4%3D&se=2018-03-20T00%3A48%3A10Z&sp=r"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000002/logFiles/mysql-slow-azuredbclitest000002-2018031923.log","name":"mysql-slow-azuredbclitest000002-2018031923.log","type":"Microsoft.DBforMySQL/servers/logFiles"}]}'} - headers: - cache-control: [no-cache] - content-length: ['1041'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:48:10 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [group delete] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 resourcemanagementclient/1.2.1 Azure-SDK-For-Python - AZURECLI/2.0.30] - accept-language: [en-US] - method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/clitest.rg000001?api-version=2017-05-10 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - content-length: ['0'] - date: ['Mon, 19 Mar 2018 23:48:11 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1DTElURVNUOjJFUkdJWjMyVUVXNlQ3VlFGR0hUV01ETDRCNVRWSktCR1haNjVLQXwzOTYyN0NFQUNGRTU4MDg3LVdFU1RVUyIsImpvYkxvY2F0aW9uIjoid2VzdHVzIn0?api-version=2017-05-10'] - pragma: [no-cache] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] - status: {code: 202, message: Accepted} -version: 1 diff --git a/src/rdbms/azext_rdbms/tests/recordings/test_mysql_server_mgmt.yaml b/src/rdbms/azext_rdbms/tests/recordings/test_mysql_server_mgmt.yaml index 78dcfff84ec..4c9c9cd6dd8 100644 --- a/src/rdbms/azext_rdbms/tests/recordings/test_mysql_server_mgmt.yaml +++ b/src/rdbms/azext_rdbms/tests/recordings/test_mysql_server_mgmt.yaml @@ -1,54 +1,56 @@ interactions: - request: - body: '{"location": "westus", "tags": {"use": "az-test"}}' + body: '{"location": "westus", "tags": {"product": "azurecli", "cause": "automation", + "date": "2018-03-30T23:17:27Z"}}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] CommandName: [group create] Connection: [keep-alive] - Content-Length: ['50'] + Content-Length: ['110'] Content-Type: [application/json; charset=utf-8] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 resourcemanagementclient/1.2.1 Azure-SDK-For-Python - AZURECLI/2.0.30] + msrest_azure/0.4.24 resourcemanagementclient/1.2.1 Azure-SDK-For-Python + AZURECLI/2.0.31] accept-language: [en-US] method: PUT uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/clitest.rg000001?api-version=2017-05-10 response: - body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001","name":"clitest.rg000001","location":"westus","tags":{"use":"az-test"},"properties":{"provisioningState":"Succeeded"}}'} + body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001","name":"clitest.rg000001","location":"westus","tags":{"product":"azurecli","cause":"automation","date":"2018-03-30T23:17:27Z"},"properties":{"provisioningState":"Succeeded"}}'} headers: cache-control: [no-cache] - content-length: ['328'] + content-length: ['384'] content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:53:34 GMT'] + date: ['Fri, 30 Mar 2018 23:17:31 GMT'] expires: ['-1'] pragma: [no-cache] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1198'] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 201, message: Created} - request: - body: '{"location": "westus", "tags": {"use": "az-test"}}' + body: '{"location": "westus", "tags": {"product": "azurecli", "cause": "automation", + "date": "2018-03-30T23:17:32Z"}}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] CommandName: [group create] Connection: [keep-alive] - Content-Length: ['50'] + Content-Length: ['110'] Content-Type: [application/json; charset=utf-8] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 resourcemanagementclient/1.2.1 Azure-SDK-For-Python - AZURECLI/2.0.30] + msrest_azure/0.4.24 resourcemanagementclient/1.2.1 Azure-SDK-For-Python + AZURECLI/2.0.31] accept-language: [en-US] method: PUT uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/clitest.rg000002?api-version=2017-05-10 response: - body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000002","name":"clitest.rg000002","location":"westus","tags":{"use":"az-test"},"properties":{"provisioningState":"Succeeded"}}'} + body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000002","name":"clitest.rg000002","location":"westus","tags":{"product":"azurecli","cause":"automation","date":"2018-03-30T23:17:32Z"},"properties":{"provisioningState":"Succeeded"}}'} headers: cache-control: [no-cache] - content-length: ['328'] + content-length: ['384'] content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:53:36 GMT'] + date: ['Fri, 30 Mar 2018 23:17:33 GMT'] expires: ['-1'] pragma: [no-cache] strict-transport-security: [max-age=31536000; includeSubDomains] @@ -56,31 +58,32 @@ interactions: x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 201, message: Created} - request: - body: '{"sku": {"name": "GP_Gen4_2"}, "properties": {"storageProfile": {}, "createMode": - "Default", "administratorLogin": "cloudsa", "administratorLoginPassword": "SecretPassword123"}, - "location": "brazilsouth", "tags": {"key": "1"}}' + body: '{"sku": {"name": "GP_Gen5_2"}, "properties": {"storageProfile": {"backupRetentionDays": + 10, "geoRedundantBackup": "Enabled"}, "createMode": "Default", "administratorLogin": + "cloudsa", "administratorLoginPassword": "SecretPassword123"}, "location": "westus", + "tags": {"key": "1"}}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] CommandName: [mysql server create] Connection: [keep-alive] - Content-Length: ['226'] + Content-Length: ['279'] Content-Type: [application/json; charset=utf-8] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] + msrest_azure/0.4.24 azure-mgmt-rdbms/2017-12-01 Azure-SDK-For-Python AZURECLI/2.0.31] accept-language: [en-US] method: PUT uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003?api-version=2017-12-01 response: - body: {string: '{"operation":"UpsertElasticServer","startTime":"2018-03-19T23:53:38.35Z"}'} + body: {string: '{"operation":"UpsertElasticServer","startTime":"2018-03-30T23:17:34.907Z"}'} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/6ccfd719-222c-4b69-87ed-3437479c8305?api-version=2017-12-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/westus/azureAsyncOperation/d91bee06-f753-4608-a189-b8d1c85a08bf?api-version=2017-12-01'] cache-control: [no-cache] - content-length: ['73'] + content-length: ['74'] content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:53:38 GMT'] + date: ['Fri, 30 Mar 2018 23:17:34 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/operationResults/6ccfd719-222c-4b69-87ed-3437479c8305?api-version=2017-12-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/westus/operationResults/d91bee06-f753-4608-a189-b8d1c85a08bf?api-version=2017-12-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] @@ -95,16 +98,16 @@ interactions: CommandName: [mysql server create] Connection: [keep-alive] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] + msrest_azure/0.4.24 azure-mgmt-rdbms/2017-12-01 Azure-SDK-For-Python AZURECLI/2.0.31] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/6ccfd719-222c-4b69-87ed-3437479c8305?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/westus/azureAsyncOperation/d91bee06-f753-4608-a189-b8d1c85a08bf?api-version=2017-12-01 response: - body: {string: '{"name":"6ccfd719-222c-4b69-87ed-3437479c8305","status":"InProgress","startTime":"2018-03-19T23:53:38.35Z"}'} + body: {string: '{"name":"d91bee06-f753-4608-a189-b8d1c85a08bf","status":"InProgress","startTime":"2018-03-30T23:17:34.907Z"}'} headers: cache-control: [no-cache] - content-length: ['107'] + content-length: ['108'] content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:54:39 GMT'] + date: ['Fri, 30 Mar 2018 23:18:35 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -121,16 +124,16 @@ interactions: CommandName: [mysql server create] Connection: [keep-alive] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] + msrest_azure/0.4.24 azure-mgmt-rdbms/2017-12-01 Azure-SDK-For-Python AZURECLI/2.0.31] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/6ccfd719-222c-4b69-87ed-3437479c8305?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/westus/azureAsyncOperation/d91bee06-f753-4608-a189-b8d1c85a08bf?api-version=2017-12-01 response: - body: {string: '{"name":"6ccfd719-222c-4b69-87ed-3437479c8305","status":"Succeeded","startTime":"2018-03-19T23:53:38.35Z"}'} + body: {string: '{"name":"d91bee06-f753-4608-a189-b8d1c85a08bf","status":"InProgress","startTime":"2018-03-30T23:17:34.907Z"}'} headers: cache-control: [no-cache] - content-length: ['106'] + content-length: ['108'] content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:55:40 GMT'] + date: ['Fri, 30 Mar 2018 23:19:35 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -147,16 +150,16 @@ interactions: CommandName: [mysql server create] Connection: [keep-alive] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] + msrest_azure/0.4.24 azure-mgmt-rdbms/2017-12-01 Azure-SDK-For-Python AZURECLI/2.0.31] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/westus/azureAsyncOperation/d91bee06-f753-4608-a189-b8d1c85a08bf?api-version=2017-12-01 response: - body: {string: '{"sku":{"name":"GP_Gen4_2","tier":"GeneralPurpose","family":"Gen4","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"5.7","sslEnforcement":"Enabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.mysql.database.azure.com","earliestRestoreDate":"2018-03-20T00:03:38.71+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"brazilsouth","tags":{"key":"1"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforMySQL/servers"}'} + body: {string: '{"name":"d91bee06-f753-4608-a189-b8d1c85a08bf","status":"Succeeded","startTime":"2018-03-30T23:17:34.907Z"}'} headers: cache-control: [no-cache] - content-length: ['934'] + content-length: ['107'] content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:55:42 GMT'] + date: ['Fri, 30 Mar 2018 23:20:36 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -170,21 +173,19 @@ interactions: headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server show] + CommandName: [mysql server create] Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] + msrest_azure/0.4.24 azure-mgmt-rdbms/2017-12-01 Azure-SDK-For-Python AZURECLI/2.0.31] method: GET uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003?api-version=2017-12-01 response: - body: {string: '{"sku":{"name":"GP_Gen4_2","tier":"GeneralPurpose","family":"Gen4","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"5.7","sslEnforcement":"Enabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.mysql.database.azure.com","earliestRestoreDate":"2018-03-20T00:03:38.71+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"brazilsouth","tags":{"key":"1"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforMySQL/servers"}'} + body: {string: '{"sku":{"name":"GP_Gen5_2","tier":"GeneralPurpose","family":"Gen5","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":10,"geoRedundantBackup":"Enabled"},"version":"5.7","sslEnforcement":"Enabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.mysql.database.azure.com","earliestRestoreDate":"2018-03-30T23:27:35.25+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"westus","tags":{"key":"1"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforMySQL/servers"}'} headers: cache-control: [no-cache] - content-length: ['934'] + content-length: ['929'] content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:55:42 GMT'] + date: ['Fri, 30 Mar 2018 23:20:37 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -198,105 +199,21 @@ interactions: headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server update] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003?api-version=2017-12-01 - response: - body: {string: '{"sku":{"name":"GP_Gen4_2","tier":"GeneralPurpose","family":"Gen4","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"5.7","sslEnforcement":"Enabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.mysql.database.azure.com","earliestRestoreDate":"2018-03-20T00:03:38.71+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"brazilsouth","tags":{"key":"1"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforMySQL/servers"}'} - headers: - cache-control: [no-cache] - content-length: ['934'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:55:44 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: '{"properties": {"storageProfile": {"backupRetentionDays": 7, "geoRedundantBackup": - "Disabled", "storageMB": 5120}, "administratorLoginPassword": "SecretPassword456", - "sslEnforcement": "Disabled"}, "tags": {"key": "2"}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server update] + CommandName: [mysql server show] Connection: [keep-alive] - Content-Length: ['218'] Content-Type: [application/json; charset=utf-8] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] + msrest_azure/0.4.24 azure-mgmt-rdbms/2017-12-01 Azure-SDK-For-Python AZURECLI/2.0.31] accept-language: [en-US] - method: PATCH - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003?api-version=2017-12-01 - response: - body: {string: '{"operation":"UpsertElasticServer","startTime":"2018-03-19T23:55:48.503Z"}'} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/8bcb1e87-f0b8-4297-8ccd-8ec9d6099b68?api-version=2017-12-01'] - cache-control: [no-cache] - content-length: ['74'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:55:48 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/operationResults/8bcb1e87-f0b8-4297-8ccd-8ec9d6099b68?api-version=2017-12-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server update] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/8bcb1e87-f0b8-4297-8ccd-8ec9d6099b68?api-version=2017-12-01 - response: - body: {string: '{"name":"8bcb1e87-f0b8-4297-8ccd-8ec9d6099b68","status":"Succeeded","startTime":"2018-03-19T23:55:48.503Z"}'} - headers: - cache-control: [no-cache] - content-length: ['107'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:56:49 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server update] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] method: GET uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003?api-version=2017-12-01 response: - body: {string: '{"sku":{"name":"GP_Gen4_2","tier":"GeneralPurpose","family":"Gen4","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"5.7","sslEnforcement":"Disabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.mysql.database.azure.com","earliestRestoreDate":"2018-03-20T00:03:38.71+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"brazilsouth","tags":{"key":"2"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforMySQL/servers"}'} + body: {string: '{"sku":{"name":"GP_Gen5_2","tier":"GeneralPurpose","family":"Gen5","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":10,"geoRedundantBackup":"Enabled"},"version":"5.7","sslEnforcement":"Enabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.mysql.database.azure.com","earliestRestoreDate":"2018-03-30T23:27:35.25+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"westus","tags":{"key":"1"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforMySQL/servers"}'} headers: cache-control: [no-cache] - content-length: ['935'] + content-length: ['929'] content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:56:50 GMT'] + date: ['Fri, 30 Mar 2018 23:20:39 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -310,21 +227,21 @@ interactions: headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server update] + CommandName: [mysql server georestore] Connection: [keep-alive] Content-Type: [application/json; charset=utf-8] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] + msrest_azure/0.4.24 azure-mgmt-rdbms/2017-12-01 Azure-SDK-For-Python AZURECLI/2.0.31] accept-language: [en-US] method: GET uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003?api-version=2017-12-01 response: - body: {string: '{"sku":{"name":"GP_Gen4_2","tier":"GeneralPurpose","family":"Gen4","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"5.7","sslEnforcement":"Disabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.mysql.database.azure.com","earliestRestoreDate":"2018-03-20T00:03:38.71+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"brazilsouth","tags":{"key":"2"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforMySQL/servers"}'} + body: {string: '{"sku":{"name":"GP_Gen5_2","tier":"GeneralPurpose","family":"Gen5","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":10,"geoRedundantBackup":"Enabled"},"version":"5.7","sslEnforcement":"Enabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.mysql.database.azure.com","earliestRestoreDate":"2018-03-30T23:27:35.25+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"westus","tags":{"key":"1"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforMySQL/servers"}'} headers: cache-control: [no-cache] - content-length: ['935'] + content-length: ['929'] content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:56:53 GMT'] + date: ['Fri, 30 Mar 2018 23:20:39 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -334,81 +251,57 @@ interactions: x-content-type-options: [nosniff] status: {code: 200, message: OK} - request: - body: '{"sku": {"name": "gp_Gen4_4", "tier": "GeneralPurpose", "capacity": 4, - "family": "Gen4"}, "properties": {"storageProfile": {"backupRetentionDays": - 7, "geoRedundantBackup": "Disabled", "storageMB": 5120}}}' + body: 'b''b\''{"sku": {"name": "GP_Gen5_2"}, "properties": {"storageProfile": + {"backupRetentionDays": 20, "geoRedundantBackup": "Disabled"}, "createMode": + "GeoRestore", "sourceServerId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003"}, + "location": "koreasouth"}\''''' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server update] + CommandName: [mysql server georestore] Connection: [keep-alive] - Content-Length: ['204'] + Content-Length: ['448'] Content-Type: [application/json; charset=utf-8] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] + msrest_azure/0.4.24 azure-mgmt-rdbms/2017-12-01 Azure-SDK-For-Python AZURECLI/2.0.31] accept-language: [en-US] - method: PATCH - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003?api-version=2017-12-01 + method: PUT + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000002/providers/Microsoft.DBforMySQL/servers/azuredbcligeorestore000005?api-version=2017-12-01 response: - body: {string: '{"operation":"UpsertElasticServer","startTime":"2018-03-19T23:56:56.023Z"}'} + body: {string: '{"operation":"RestoreElasticServer","startTime":"2018-03-30T23:20:41.823Z"}'} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/e3f07d06-7711-4dc7-91d6-4ec5e81f2059?api-version=2017-12-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/koreasouth/azureAsyncOperation/cb9a985e-e8ea-4c1c-9082-1901c5dcf491?api-version=2017-12-01'] cache-control: [no-cache] - content-length: ['74'] + content-length: ['75'] content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:56:55 GMT'] + date: ['Fri, 30 Mar 2018 23:20:41 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/operationResults/e3f07d06-7711-4dc7-91d6-4ec5e81f2059?api-version=2017-12-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/koreasouth/operationResults/cb9a985e-e8ea-4c1c-9082-1901c5dcf491?api-version=2017-12-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1198'] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 202, message: Accepted} - request: body: null headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server update] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/e3f07d06-7711-4dc7-91d6-4ec5e81f2059?api-version=2017-12-01 - response: - body: {string: '{"name":"e3f07d06-7711-4dc7-91d6-4ec5e81f2059","status":"Succeeded","startTime":"2018-03-19T23:56:56.023Z"}'} - headers: - cache-control: [no-cache] - content-length: ['107'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:57:57 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server update] + CommandName: [mysql server georestore] Connection: [keep-alive] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] + msrest_azure/0.4.24 azure-mgmt-rdbms/2017-12-01 Azure-SDK-For-Python AZURECLI/2.0.31] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/koreasouth/azureAsyncOperation/cb9a985e-e8ea-4c1c-9082-1901c5dcf491?api-version=2017-12-01 response: - body: {string: '{"sku":{"name":"GP_Gen4_4","tier":"GeneralPurpose","family":"Gen4","capacity":4},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"5.7","sslEnforcement":"Disabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.mysql.database.azure.com","earliestRestoreDate":"2018-03-20T00:03:38.71+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"brazilsouth","tags":{"key":"2"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforMySQL/servers"}'} + body: {string: '{"name":"cb9a985e-e8ea-4c1c-9082-1901c5dcf491","status":"Failed","startTime":"2018-03-30T23:20:41.823Z","error":{"code":"SubscriptionDoesNotHaveServer","message":"Subscription + ''707595a1-1498-4b7d-9771-cf0455939d2c'' does not have the server ''azuredbclitest000003''."}}'} headers: cache-control: [no-cache] - content-length: ['935'] + content-length: ['309'] content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:57:58 GMT'] + date: ['Fri, 30 Mar 2018 23:20:53 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -422,21 +315,21 @@ interactions: headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server show] + CommandName: [mysql server list] Connection: [keep-alive] Content-Type: [application/json; charset=utf-8] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] + msrest_azure/0.4.24 azure-mgmt-rdbms/2017-12-01 Azure-SDK-For-Python AZURECLI/2.0.31] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers?api-version=2017-12-01 response: - body: {string: '{"sku":{"name":"GP_Gen4_4","tier":"GeneralPurpose","family":"Gen4","capacity":4},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"5.7","sslEnforcement":"Disabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.mysql.database.azure.com","earliestRestoreDate":"2018-03-20T00:03:38.71+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"brazilsouth","tags":{"key":"2"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforMySQL/servers"}'} + body: {string: '{"value":[{"sku":{"name":"GP_Gen5_2","tier":"GeneralPurpose","family":"Gen5","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":10,"geoRedundantBackup":"Enabled"},"version":"5.7","sslEnforcement":"Enabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.mysql.database.azure.com","earliestRestoreDate":"2018-03-30T23:27:35.25+00:00","replicationRole":"","primaryServerId":""},"location":"westus","tags":{"key":"1"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforMySQL/servers"}]}'} headers: cache-control: [no-cache] - content-length: ['935'] + content-length: ['917'] content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:58:01 GMT'] + date: ['Fri, 30 Mar 2018 23:20:54 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -450,21 +343,21 @@ interactions: headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server update] + CommandName: [mysql server list] Connection: [keep-alive] Content-Type: [application/json; charset=utf-8] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] + msrest_azure/0.4.24 azure-mgmt-rdbms/2017-12-01 Azure-SDK-For-Python AZURECLI/2.0.31] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000002/providers/Microsoft.DBforMySQL/servers?api-version=2017-12-01 response: - body: {string: '{"sku":{"name":"GP_Gen4_4","tier":"GeneralPurpose","family":"Gen4","capacity":4},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"5.7","sslEnforcement":"Disabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.mysql.database.azure.com","earliestRestoreDate":"2018-03-20T00:03:38.71+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"brazilsouth","tags":{"key":"2"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforMySQL/servers"}'} + body: {string: '{"value":[]}'} headers: cache-control: [no-cache] - content-length: ['935'] + content-length: ['12'] content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:58:02 GMT'] + date: ['Fri, 30 Mar 2018 23:20:56 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -474,31 +367,29 @@ interactions: x-content-type-options: [nosniff] status: {code: 200, message: OK} - request: - body: '{"sku": {"name": "gp_Gen4_2", "tier": "GeneralPurpose", "capacity": 2, - "family": "Gen4"}, "properties": {"storageProfile": {"backupRetentionDays": - 7, "geoRedundantBackup": "Disabled", "storageMB": 5120}}}' + body: null headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server update] + CommandName: [mysql server delete] Connection: [keep-alive] - Content-Length: ['204'] + Content-Length: ['0'] Content-Type: [application/json; charset=utf-8] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] + msrest_azure/0.4.24 azure-mgmt-rdbms/2017-12-01 Azure-SDK-For-Python AZURECLI/2.0.31] accept-language: [en-US] - method: PATCH + method: DELETE uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003?api-version=2017-12-01 response: - body: {string: '{"operation":"UpsertElasticServer","startTime":"2018-03-19T23:58:05.837Z"}'} + body: {string: '{"operation":"DropElasticServer","startTime":"2018-03-30T23:20:57.7Z"}'} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/58259d1c-a95f-4292-a699-b3bb656c0e5b?api-version=2017-12-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/westus/azureAsyncOperation/f5578508-e5db-4912-aa25-34dc2f1ccea5?api-version=2017-12-01'] cache-control: [no-cache] - content-length: ['74'] + content-length: ['70'] content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:58:05 GMT'] + date: ['Fri, 30 Mar 2018 23:20:57 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/operationResults/58259d1c-a95f-4292-a699-b3bb656c0e5b?api-version=2017-12-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/westus/operationResults/f5578508-e5db-4912-aa25-34dc2f1ccea5?api-version=2017-12-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] @@ -510,71 +401,19 @@ interactions: headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server update] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/58259d1c-a95f-4292-a699-b3bb656c0e5b?api-version=2017-12-01 - response: - body: {string: '{"name":"58259d1c-a95f-4292-a699-b3bb656c0e5b","status":"InProgress","startTime":"2018-03-19T23:58:05.837Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:59:06 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server update] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/58259d1c-a95f-4292-a699-b3bb656c0e5b?api-version=2017-12-01 - response: - body: {string: '{"name":"58259d1c-a95f-4292-a699-b3bb656c0e5b","status":"Succeeded","startTime":"2018-03-19T23:58:05.837Z"}'} - headers: - cache-control: [no-cache] - content-length: ['107'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:00:07 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server update] + CommandName: [mysql server delete] Connection: [keep-alive] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] + msrest_azure/0.4.24 azure-mgmt-rdbms/2017-12-01 Azure-SDK-For-Python AZURECLI/2.0.31] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/westus/azureAsyncOperation/f5578508-e5db-4912-aa25-34dc2f1ccea5?api-version=2017-12-01 response: - body: {string: '{"sku":{"name":"GP_Gen4_2","tier":"GeneralPurpose","family":"Gen4","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"5.7","sslEnforcement":"Disabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.mysql.database.azure.com","earliestRestoreDate":"2018-03-20T00:03:38.71+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"brazilsouth","tags":{"key":"2"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforMySQL/servers"}'} + body: {string: '{"name":"f5578508-e5db-4912-aa25-34dc2f1ccea5","status":"Succeeded","startTime":"2018-03-30T23:20:57.7Z"}'} headers: cache-control: [no-cache] - content-length: ['935'] + content-length: ['105'] content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:00:08 GMT'] + date: ['Fri, 30 Mar 2018 23:21:13 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -588,104 +427,49 @@ interactions: headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server update] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003?api-version=2017-12-01 - response: - body: {string: '{"sku":{"name":"GP_Gen4_2","tier":"GeneralPurpose","family":"Gen4","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"5.7","sslEnforcement":"Disabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.mysql.database.azure.com","earliestRestoreDate":"2018-03-20T00:03:38.71+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"brazilsouth","tags":{"key":"2"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforMySQL/servers"}'} - headers: - cache-control: [no-cache] - content-length: ['935'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:00:09 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: '{"properties": {"storageProfile": {"backupRetentionDays": 7, "geoRedundantBackup": - "Disabled", "storageMB": 5120}, "sslEnforcement": "Enabled"}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server update] + CommandName: [mysql server delete] Connection: [keep-alive] - Content-Length: ['144'] + Content-Length: ['0'] Content-Type: [application/json; charset=utf-8] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] + msrest_azure/0.4.24 azure-mgmt-rdbms/2017-12-01 Azure-SDK-For-Python AZURECLI/2.0.31] accept-language: [en-US] - method: PATCH - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003?api-version=2017-12-01 + method: DELETE + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000002/providers/Microsoft.DBforMySQL/servers/azuredbcligeorestore000005?api-version=2017-12-01 response: - body: {string: '{"operation":"UpsertElasticServer","startTime":"2018-03-20T00:00:12.963Z"}'} + body: {string: '{"operation":"DropElasticServer","startTime":"2018-03-30T23:21:15.477Z"}'} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/f9fdd806-b9a3-4a9e-8504-7b2aaa60c696?api-version=2017-12-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/koreasouth/azureAsyncOperation/773042a7-7737-42a3-b6db-298980502ac4?api-version=2017-12-01'] cache-control: [no-cache] - content-length: ['74'] + content-length: ['72'] content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:00:12 GMT'] + date: ['Fri, 30 Mar 2018 23:21:15 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/operationResults/f9fdd806-b9a3-4a9e-8504-7b2aaa60c696?api-version=2017-12-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/koreasouth/operationResults/773042a7-7737-42a3-b6db-298980502ac4?api-version=2017-12-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1197'] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 202, message: Accepted} - request: body: null headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server update] + CommandName: [mysql server delete] Connection: [keep-alive] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] + msrest_azure/0.4.24 azure-mgmt-rdbms/2017-12-01 Azure-SDK-For-Python AZURECLI/2.0.31] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/f9fdd806-b9a3-4a9e-8504-7b2aaa60c696?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/koreasouth/azureAsyncOperation/773042a7-7737-42a3-b6db-298980502ac4?api-version=2017-12-01 response: - body: {string: '{"name":"f9fdd806-b9a3-4a9e-8504-7b2aaa60c696","status":"Succeeded","startTime":"2018-03-20T00:00:12.963Z"}'} + body: {string: '{"name":"773042a7-7737-42a3-b6db-298980502ac4","status":"Succeeded","startTime":"2018-03-30T23:21:15.477Z"}'} headers: cache-control: [no-cache] content-length: ['107'] content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:01:13 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server update] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003?api-version=2017-12-01 - response: - body: {string: '{"sku":{"name":"GP_Gen4_2","tier":"GeneralPurpose","family":"Gen4","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"5.7","sslEnforcement":"Enabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.mysql.database.azure.com","earliestRestoreDate":"2018-03-20T00:03:38.71+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"brazilsouth","tags":{"key":"2"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforMySQL/servers"}'} - headers: - cache-control: [no-cache] - content-length: ['934'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:01:15 GMT'] + date: ['Fri, 30 Mar 2018 23:21:32 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -699,984 +483,47 @@ interactions: headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server update] + CommandName: [mysql server list] Connection: [keep-alive] Content-Type: [application/json; charset=utf-8] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] + msrest_azure/0.4.24 azure-mgmt-rdbms/2017-12-01 Azure-SDK-For-Python AZURECLI/2.0.31] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers?api-version=2017-12-01 response: - body: {string: '{"sku":{"name":"GP_Gen4_2","tier":"GeneralPurpose","family":"Gen4","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"5.7","sslEnforcement":"Enabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.mysql.database.azure.com","earliestRestoreDate":"2018-03-20T00:03:38.71+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"brazilsouth","tags":{"key":"2"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforMySQL/servers"}'} + body: {string: '{"value":[]}'} headers: cache-control: [no-cache] - content-length: ['934'] + content-length: ['12'] content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:01:16 GMT'] + date: ['Fri, 30 Mar 2018 23:21:32 GMT'] expires: ['-1'] pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] status: {code: 200, message: OK} - request: - body: '{"properties": {"storageProfile": {"backupRetentionDays": 7, "geoRedundantBackup": - "Disabled", "storageMB": 5120}}, "tags": {"key": "3"}}' + body: null headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server update] + CommandName: [mysql server list] Connection: [keep-alive] - Content-Length: ['137'] Content-Type: [application/json; charset=utf-8] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: PATCH - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003?api-version=2017-12-01 - response: - body: {string: '{"operation":"UpsertElasticServer","startTime":"2018-03-20T00:01:20.04Z"}'} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/e4403ff7-c0fb-452c-a30e-a5baa28bc7cc?api-version=2017-12-01'] - cache-control: [no-cache] - content-length: ['73'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:01:19 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/operationResults/e4403ff7-c0fb-452c-a30e-a5baa28bc7cc?api-version=2017-12-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1198'] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server update] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/e4403ff7-c0fb-452c-a30e-a5baa28bc7cc?api-version=2017-12-01 - response: - body: {string: '{"name":"e4403ff7-c0fb-452c-a30e-a5baa28bc7cc","status":"Succeeded","startTime":"2018-03-20T00:01:20.04Z"}'} - headers: - cache-control: [no-cache] - content-length: ['106'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:02:21 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server update] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003?api-version=2017-12-01 - response: - body: {string: '{"sku":{"name":"GP_Gen4_2","tier":"GeneralPurpose","family":"Gen4","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"5.7","sslEnforcement":"Enabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.mysql.database.azure.com","earliestRestoreDate":"2018-03-20T00:03:38.71+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"brazilsouth","tags":{"key":"3"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforMySQL/servers"}'} - headers: - cache-control: [no-cache] - content-length: ['934'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:02:22 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server restore] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003?api-version=2017-12-01 - response: - body: {string: '{"sku":{"name":"GP_Gen4_2","tier":"GeneralPurpose","family":"Gen4","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"5.7","sslEnforcement":"Enabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.mysql.database.azure.com","earliestRestoreDate":"2018-03-20T00:03:38.71+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"brazilsouth","tags":{"key":"3"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforMySQL/servers"}'} - headers: - cache-control: [no-cache] - content-length: ['934'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:07:24 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: 'b''b\''{"properties": {"createMode": "PointInTimeRestore", "sourceServerId": - "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003", - "restorePointInTime": "2018-03-20T00:07:23.282682Z"}, "location": "brazilsouth"}\''''' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server restore] - Connection: [keep-alive] - Content-Length: ['399'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000002/providers/Microsoft.DBforMySQL/servers/azuredbclirestore000004?api-version=2017-12-01 - response: - body: {string: '{"operation":"RestoreElasticServer","startTime":"2018-03-20T00:07:26.633Z"}'} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/f117ca9e-7e71-4e71-91e9-cfa38776efe0?api-version=2017-12-01'] - cache-control: [no-cache] - content-length: ['75'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:07:26 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/operationResults/f117ca9e-7e71-4e71-91e9-cfa38776efe0?api-version=2017-12-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/f117ca9e-7e71-4e71-91e9-cfa38776efe0?api-version=2017-12-01 - response: - body: {string: '{"name":"f117ca9e-7e71-4e71-91e9-cfa38776efe0","status":"InProgress","startTime":"2018-03-20T00:07:26.633Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:07:37 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/f117ca9e-7e71-4e71-91e9-cfa38776efe0?api-version=2017-12-01 - response: - body: {string: '{"name":"f117ca9e-7e71-4e71-91e9-cfa38776efe0","status":"InProgress","startTime":"2018-03-20T00:07:26.633Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:07:49 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/f117ca9e-7e71-4e71-91e9-cfa38776efe0?api-version=2017-12-01 - response: - body: {string: '{"name":"f117ca9e-7e71-4e71-91e9-cfa38776efe0","status":"InProgress","startTime":"2018-03-20T00:07:26.633Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:08:00 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/f117ca9e-7e71-4e71-91e9-cfa38776efe0?api-version=2017-12-01 - response: - body: {string: '{"name":"f117ca9e-7e71-4e71-91e9-cfa38776efe0","status":"InProgress","startTime":"2018-03-20T00:07:26.633Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:08:11 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/f117ca9e-7e71-4e71-91e9-cfa38776efe0?api-version=2017-12-01 - response: - body: {string: '{"name":"f117ca9e-7e71-4e71-91e9-cfa38776efe0","status":"InProgress","startTime":"2018-03-20T00:07:26.633Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:08:23 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/f117ca9e-7e71-4e71-91e9-cfa38776efe0?api-version=2017-12-01 - response: - body: {string: '{"name":"f117ca9e-7e71-4e71-91e9-cfa38776efe0","status":"InProgress","startTime":"2018-03-20T00:07:26.633Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:08:34 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/f117ca9e-7e71-4e71-91e9-cfa38776efe0?api-version=2017-12-01 - response: - body: {string: '{"name":"f117ca9e-7e71-4e71-91e9-cfa38776efe0","status":"InProgress","startTime":"2018-03-20T00:07:26.633Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:08:45 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/f117ca9e-7e71-4e71-91e9-cfa38776efe0?api-version=2017-12-01 - response: - body: {string: '{"name":"f117ca9e-7e71-4e71-91e9-cfa38776efe0","status":"InProgress","startTime":"2018-03-20T00:07:26.633Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:08:58 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/f117ca9e-7e71-4e71-91e9-cfa38776efe0?api-version=2017-12-01 - response: - body: {string: '{"name":"f117ca9e-7e71-4e71-91e9-cfa38776efe0","status":"InProgress","startTime":"2018-03-20T00:07:26.633Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:09:09 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/f117ca9e-7e71-4e71-91e9-cfa38776efe0?api-version=2017-12-01 - response: - body: {string: '{"name":"f117ca9e-7e71-4e71-91e9-cfa38776efe0","status":"InProgress","startTime":"2018-03-20T00:07:26.633Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:09:20 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/f117ca9e-7e71-4e71-91e9-cfa38776efe0?api-version=2017-12-01 - response: - body: {string: '{"name":"f117ca9e-7e71-4e71-91e9-cfa38776efe0","status":"InProgress","startTime":"2018-03-20T00:07:26.633Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:09:32 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/f117ca9e-7e71-4e71-91e9-cfa38776efe0?api-version=2017-12-01 - response: - body: {string: '{"name":"f117ca9e-7e71-4e71-91e9-cfa38776efe0","status":"InProgress","startTime":"2018-03-20T00:07:26.633Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:09:43 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/f117ca9e-7e71-4e71-91e9-cfa38776efe0?api-version=2017-12-01 - response: - body: {string: '{"name":"f117ca9e-7e71-4e71-91e9-cfa38776efe0","status":"InProgress","startTime":"2018-03-20T00:07:26.633Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:09:54 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/f117ca9e-7e71-4e71-91e9-cfa38776efe0?api-version=2017-12-01 - response: - body: {string: '{"name":"f117ca9e-7e71-4e71-91e9-cfa38776efe0","status":"InProgress","startTime":"2018-03-20T00:07:26.633Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:10:06 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/f117ca9e-7e71-4e71-91e9-cfa38776efe0?api-version=2017-12-01 - response: - body: {string: '{"name":"f117ca9e-7e71-4e71-91e9-cfa38776efe0","status":"InProgress","startTime":"2018-03-20T00:07:26.633Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:10:17 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/f117ca9e-7e71-4e71-91e9-cfa38776efe0?api-version=2017-12-01 - response: - body: {string: '{"name":"f117ca9e-7e71-4e71-91e9-cfa38776efe0","status":"InProgress","startTime":"2018-03-20T00:07:26.633Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:10:29 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/f117ca9e-7e71-4e71-91e9-cfa38776efe0?api-version=2017-12-01 - response: - body: {string: '{"name":"f117ca9e-7e71-4e71-91e9-cfa38776efe0","status":"InProgress","startTime":"2018-03-20T00:07:26.633Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:10:40 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/f117ca9e-7e71-4e71-91e9-cfa38776efe0?api-version=2017-12-01 - response: - body: {string: '{"name":"f117ca9e-7e71-4e71-91e9-cfa38776efe0","status":"InProgress","startTime":"2018-03-20T00:07:26.633Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:10:51 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/f117ca9e-7e71-4e71-91e9-cfa38776efe0?api-version=2017-12-01 - response: - body: {string: '{"name":"f117ca9e-7e71-4e71-91e9-cfa38776efe0","status":"InProgress","startTime":"2018-03-20T00:07:26.633Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:11:02 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/f117ca9e-7e71-4e71-91e9-cfa38776efe0?api-version=2017-12-01 - response: - body: {string: '{"name":"f117ca9e-7e71-4e71-91e9-cfa38776efe0","status":"InProgress","startTime":"2018-03-20T00:07:26.633Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:11:14 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/f117ca9e-7e71-4e71-91e9-cfa38776efe0?api-version=2017-12-01 - response: - body: {string: '{"name":"f117ca9e-7e71-4e71-91e9-cfa38776efe0","status":"InProgress","startTime":"2018-03-20T00:07:26.633Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:11:25 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/f117ca9e-7e71-4e71-91e9-cfa38776efe0?api-version=2017-12-01 - response: - body: {string: '{"name":"f117ca9e-7e71-4e71-91e9-cfa38776efe0","status":"InProgress","startTime":"2018-03-20T00:07:26.633Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:11:37 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/f117ca9e-7e71-4e71-91e9-cfa38776efe0?api-version=2017-12-01 - response: - body: {string: '{"name":"f117ca9e-7e71-4e71-91e9-cfa38776efe0","status":"Succeeded","startTime":"2018-03-20T00:07:26.633Z"}'} - headers: - cache-control: [no-cache] - content-length: ['107'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:11:47 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000002/providers/Microsoft.DBforMySQL/servers/azuredbclirestore000004?api-version=2017-12-01 - response: - body: {string: '{"sku":{"name":"GP_Gen4_2","tier":"GeneralPurpose","family":"Gen4","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"5.7","sslEnforcement":"Enabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclirestore000004.mysql.database.azure.com","earliestRestoreDate":"2018-03-20T00:17:26.883+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"brazilsouth","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000002/providers/Microsoft.DBforMySQL/servers/azuredbclirestore000004","name":"azuredbclirestore000004","type":"Microsoft.DBforMySQL/servers"}'} - headers: - cache-control: [no-cache] - content-length: ['916'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:11:50 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server list] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] + msrest_azure/0.4.24 azure-mgmt-rdbms/2017-12-01 Azure-SDK-For-Python AZURECLI/2.0.31] accept-language: [en-US] method: GET uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000002/providers/Microsoft.DBforMySQL/servers?api-version=2017-12-01 - response: - body: {string: '{"value":[{"sku":{"name":"GP_Gen4_2","tier":"GeneralPurpose","family":"Gen4","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"5.7","sslEnforcement":"Enabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclirestore000004.mysql.database.azure.com","earliestRestoreDate":"2018-03-20T00:17:26.883+00:00","replicationRole":"","primaryServerId":""},"location":"brazilsouth","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000002/providers/Microsoft.DBforMySQL/servers/azuredbclirestore000004","name":"azuredbclirestore000004","type":"Microsoft.DBforMySQL/servers"}]}'} - headers: - cache-control: [no-cache] - content-length: ['904'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:11:52 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server list] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/servers?api-version=2017-12-01 - response: - body: {string: '{"value":[{"sku":{"name":"GP_Gen4_2","tier":"GeneralPurpose","family":"Gen4","capacity":2},"properties":{"administratorLogin":"rohit","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"5.7","sslEnforcement":"Enabled","userVisibleState":"Ready","fullyQualifiedDomainName":"rohit1dbcreate.mysql.database.azure.com","earliestRestoreDate":"2018-03-13T00:11:53.5958769+00:00","replicationRole":"","primaryServerId":""},"location":"brazilsouth","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/OrcasGATesting/providers/Microsoft.DBforMySQL/servers/rohit1dbcreate","name":"rohit1dbcreate","type":"Microsoft.DBforMySQL/servers"},{"sku":{"name":"GP_Gen4_2","tier":"GeneralPurpose","family":"Gen4","capacity":2},"properties":{"administratorLogin":"rohit","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"5.7","sslEnforcement":"Enabled","userVisibleState":"Ready","fullyQualifiedDomainName":"testsvr103.mysql.database.azure.com","earliestRestoreDate":"2018-03-19T23:48:30.73+00:00","replicationRole":"","primaryServerId":""},"location":"brazilsouth","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/OrcasGATesting/providers/Microsoft.DBforMySQL/servers/testsvr103","name":"testsvr103","type":"Microsoft.DBforMySQL/servers"},{"sku":{"name":"GP_Gen4_2","tier":"GeneralPurpose","family":"Gen4","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"5.7","sslEnforcement":"Enabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.mysql.database.azure.com","earliestRestoreDate":"2018-03-20T00:03:38.71+00:00","replicationRole":"","primaryServerId":""},"location":"brazilsouth","tags":{"key":"3"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforMySQL/servers"},{"sku":{"name":"GP_Gen4_2","tier":"GeneralPurpose","family":"Gen4","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"5.7","sslEnforcement":"Enabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclirestore000004.mysql.database.azure.com","earliestRestoreDate":"2018-03-20T00:17:26.883+00:00","replicationRole":"","primaryServerId":""},"location":"brazilsouth","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000002/providers/Microsoft.DBforMySQL/servers/azuredbclirestore000004","name":"azuredbclirestore000004","type":"Microsoft.DBforMySQL/servers"}]}'} - headers: - cache-control: [no-cache] - content-length: ['3172'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:11:53 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server delete] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers/azuredbclitest000003?api-version=2017-12-01 - response: - body: {string: '{"operation":"DropElasticServer","startTime":"2018-03-20T00:11:55.247Z"}'} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/dc108e9f-e1a4-4367-9c1e-01879be57c5d?api-version=2017-12-01'] - cache-control: [no-cache] - content-length: ['72'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:11:55 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/operationResults/dc108e9f-e1a4-4367-9c1e-01879be57c5d?api-version=2017-12-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server delete] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/dc108e9f-e1a4-4367-9c1e-01879be57c5d?api-version=2017-12-01 - response: - body: {string: '{"name":"dc108e9f-e1a4-4367-9c1e-01879be57c5d","status":"Succeeded","startTime":"2018-03-20T00:11:55.247Z"}'} - headers: - cache-control: [no-cache] - content-length: ['107'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:12:11 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server delete] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000002/providers/Microsoft.DBforMySQL/servers/azuredbclirestore000004?api-version=2017-12-01 - response: - body: {string: '{"operation":"DropElasticServer","startTime":"2018-03-20T00:12:13.787Z"}'} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/85ae4fd4-32c9-4097-883f-5e86a984a9d1?api-version=2017-12-01'] - cache-control: [no-cache] - content-length: ['72'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:12:13 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/operationResults/85ae4fd4-32c9-4097-883f-5e86a984a9d1?api-version=2017-12-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server delete] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforMySQL/locations/brazilsouth/azureAsyncOperation/85ae4fd4-32c9-4097-883f-5e86a984a9d1?api-version=2017-12-01 - response: - body: {string: '{"name":"85ae4fd4-32c9-4097-883f-5e86a984a9d1","status":"Succeeded","startTime":"2018-03-20T00:12:13.787Z"}'} - headers: - cache-control: [no-cache] - content-length: ['107'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:12:29 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [mysql server list] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforMySQL/servers?api-version=2017-12-01 response: body: {string: '{"value":[]}'} headers: cache-control: [no-cache] content-length: ['12'] content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:12:33 GMT'] + date: ['Fri, 30 Mar 2018 23:21:34 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -1695,8 +542,8 @@ interactions: Content-Length: ['0'] Content-Type: [application/json; charset=utf-8] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 resourcemanagementclient/1.2.1 Azure-SDK-For-Python - AZURECLI/2.0.30] + msrest_azure/0.4.24 resourcemanagementclient/1.2.1 Azure-SDK-For-Python + AZURECLI/2.0.31] accept-language: [en-US] method: DELETE uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/clitest.rg000002?api-version=2017-05-10 @@ -1705,9 +552,9 @@ interactions: headers: cache-control: [no-cache] content-length: ['0'] - date: ['Tue, 20 Mar 2018 00:12:33 GMT'] + date: ['Fri, 30 Mar 2018 23:21:35 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1DTElURVNUOjJFUkdVNFQzUkpOSkpHSDZWQVhOQVpJTlVHRks2RlhBRzZYUTRLTHwzMDE1QUUyM0FFQzY3QjRCLVdFU1RVUyIsImpvYkxvY2F0aW9uIjoid2VzdHVzIn0?api-version=2017-05-10'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1DTElURVNUOjJFUkdLVlE2T0gyNzYySFMyTk9IQ1RDTVhRU1JYM05MTU40Rlk1MnxGM0U4NzQ1RDdGNUJGNDg0LVdFU1RVUyIsImpvYkxvY2F0aW9uIjoid2VzdHVzIn0?api-version=2017-05-10'] pragma: [no-cache] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] @@ -1723,8 +570,8 @@ interactions: Content-Length: ['0'] Content-Type: [application/json; charset=utf-8] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 resourcemanagementclient/1.2.1 Azure-SDK-For-Python - AZURECLI/2.0.30] + msrest_azure/0.4.24 resourcemanagementclient/1.2.1 Azure-SDK-For-Python + AZURECLI/2.0.31] accept-language: [en-US] method: DELETE uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/clitest.rg000001?api-version=2017-05-10 @@ -1733,9 +580,9 @@ interactions: headers: cache-control: [no-cache] content-length: ['0'] - date: ['Tue, 20 Mar 2018 00:12:34 GMT'] + date: ['Fri, 30 Mar 2018 23:21:37 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1DTElURVNUOjJFUkdVUlY2NldYVEhHU1E2NUdGWVlaQ01YTU0zSVM2UzRaQ1BXN3wyRjI4RjVCRDk0NEM3M0MwLVdFU1RVUyIsImpvYkxvY2F0aW9uIjoid2VzdHVzIn0?api-version=2017-05-10'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1DTElURVNUOjJFUkczWFpKRDJUWVFIR01XQVhFSVZTUEVGVEtXRklMRkRUU0RVRnw2MzYwMkVGRUJGRkFFOERCLVdFU1RVUyIsImpvYkxvY2F0aW9uIjoid2VzdHVzIn0?api-version=2017-05-10'] pragma: [no-cache] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] diff --git a/src/rdbms/azext_rdbms/tests/recordings/test_postgres_proxy_resources_mgmt.yaml b/src/rdbms/azext_rdbms/tests/recordings/test_postgres_proxy_resources_mgmt.yaml deleted file mode 100644 index 8845fcd3ea5..00000000000 --- a/src/rdbms/azext_rdbms/tests/recordings/test_postgres_proxy_resources_mgmt.yaml +++ /dev/null @@ -1,1258 +0,0 @@ -interactions: -- request: - body: '{"location": "westus", "tags": {"use": "az-test"}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [group create] - Connection: [keep-alive] - Content-Length: ['50'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 resourcemanagementclient/1.2.1 Azure-SDK-For-Python - AZURECLI/2.0.30] - accept-language: [en-US] - method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/clitest.rg000001?api-version=2017-05-10 - response: - body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001","name":"clitest.rg000001","location":"westus","tags":{"use":"az-test"},"properties":{"provisioningState":"Succeeded"}}'} - headers: - cache-control: [no-cache] - content-length: ['328'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:48:12 GMT'] - expires: ['-1'] - pragma: [no-cache] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] - status: {code: 201, message: Created} -- request: - body: '{"sku": {"name": "GP_Gen4_2"}, "properties": {"storageProfile": {}, "createMode": - "Default", "administratorLogin": "cloudsa", "administratorLoginPassword": "SecretPassword123"}, - "location": "brazilsouth"}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server create] - Connection: [keep-alive] - Content-Length: ['204'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002?api-version=2017-12-01 - response: - body: {string: '{"operation":"UpsertElasticServer","startTime":"2018-03-19T23:48:14.857Z"}'} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/6fd63495-20cc-46b3-8af4-ae3b3386f3a9?api-version=2017-12-01'] - cache-control: [no-cache] - content-length: ['74'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:48:15 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/operationResults/6fd63495-20cc-46b3-8af4-ae3b3386f3a9?api-version=2017-12-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server create] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/6fd63495-20cc-46b3-8af4-ae3b3386f3a9?api-version=2017-12-01 - response: - body: {string: '{"name":"6fd63495-20cc-46b3-8af4-ae3b3386f3a9","status":"InProgress","startTime":"2018-03-19T23:48:14.857Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:49:15 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server create] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/6fd63495-20cc-46b3-8af4-ae3b3386f3a9?api-version=2017-12-01 - response: - body: {string: '{"name":"6fd63495-20cc-46b3-8af4-ae3b3386f3a9","status":"Succeeded","startTime":"2018-03-19T23:48:14.857Z"}'} - headers: - cache-control: [no-cache] - content-length: ['107'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:50:17 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server create] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002?api-version=2017-12-01 - response: - body: {string: '{"sku":{"name":"GP_Gen4_2","tier":"GeneralPurpose","family":"Gen4","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"9.6","sslEnforcement":"Enabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000002.postgres.database.azure.com","earliestRestoreDate":"2018-03-19T23:58:15.213+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"brazilsouth","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002","name":"azuredbclitest000002","type":"Microsoft.DBforPostgreSQL/servers"}'} - headers: - cache-control: [no-cache] - content-length: ['929'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:50:17 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: '{"properties": {"startIpAddress": "0.0.0.0", "endIpAddress": "255.255.255.255"}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server firewall-rule create] - Connection: [keep-alive] - Content-Length: ['80'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/firewallRules/rule1?api-version=2017-12-01 - response: - body: {string: '{"operation":"UpsertElasticServerFirewallRules","startTime":"2018-03-19T23:50:20.8Z"}'} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/ce1f2df3-3f1d-49cf-8343-7a1432c73702?api-version=2017-12-01'] - cache-control: [no-cache] - content-length: ['85'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:50:20 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/operationResults/ce1f2df3-3f1d-49cf-8343-7a1432c73702?api-version=2017-12-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1198'] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server firewall-rule create] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/ce1f2df3-3f1d-49cf-8343-7a1432c73702?api-version=2017-12-01 - response: - body: {string: '{"name":"ce1f2df3-3f1d-49cf-8343-7a1432c73702","status":"Succeeded","startTime":"2018-03-19T23:50:20.8Z"}'} - headers: - cache-control: [no-cache] - content-length: ['105'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:50:37 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server firewall-rule create] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/firewallRules/rule1?api-version=2017-12-01 - response: - body: {string: '{"properties":{"startIpAddress":"0.0.0.0","endIpAddress":"255.255.255.255"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/firewallRules/rule1","name":"rule1","type":"Microsoft.DBforPostgreSQL/servers/firewallRules"}'} - headers: - cache-control: [no-cache] - content-length: ['426'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:50:38 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server firewall-rule show] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/firewallRules/rule1?api-version=2017-12-01 - response: - body: {string: '{"properties":{"startIpAddress":"0.0.0.0","endIpAddress":"255.255.255.255"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/firewallRules/rule1","name":"rule1","type":"Microsoft.DBforPostgreSQL/servers/firewallRules"}'} - headers: - cache-control: [no-cache] - content-length: ['426'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:50:39 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server firewall-rule update] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/firewallRules/rule1?api-version=2017-12-01 - response: - body: {string: '{"properties":{"startIpAddress":"0.0.0.0","endIpAddress":"255.255.255.255"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/firewallRules/rule1","name":"rule1","type":"Microsoft.DBforPostgreSQL/servers/firewallRules"}'} - headers: - cache-control: [no-cache] - content-length: ['426'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:50:41 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: '{"properties": {"startIpAddress": "123.123.123.123", "endIpAddress": "123.123.123.124"}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server firewall-rule update] - Connection: [keep-alive] - Content-Length: ['88'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/firewallRules/rule1?api-version=2017-12-01 - response: - body: {string: '{"operation":"UpsertElasticServerFirewallRules","startTime":"2018-03-19T23:50:43.24Z"}'} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/d9eb0e77-2326-46c4-8d2c-09f42e07637e?api-version=2017-12-01'] - cache-control: [no-cache] - content-length: ['86'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:50:43 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/operationResults/d9eb0e77-2326-46c4-8d2c-09f42e07637e?api-version=2017-12-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1198'] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server firewall-rule update] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/d9eb0e77-2326-46c4-8d2c-09f42e07637e?api-version=2017-12-01 - response: - body: {string: '{"name":"d9eb0e77-2326-46c4-8d2c-09f42e07637e","status":"Succeeded","startTime":"2018-03-19T23:50:43.24Z"}'} - headers: - cache-control: [no-cache] - content-length: ['106'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:50:59 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server firewall-rule update] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/firewallRules/rule1?api-version=2017-12-01 - response: - body: {string: '{"properties":{"startIpAddress":"123.123.123.123","endIpAddress":"123.123.123.124"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/firewallRules/rule1","name":"rule1","type":"Microsoft.DBforPostgreSQL/servers/firewallRules"}'} - headers: - cache-control: [no-cache] - content-length: ['434'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:51:00 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server firewall-rule update] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/firewallRules/rule1?api-version=2017-12-01 - response: - body: {string: '{"properties":{"startIpAddress":"123.123.123.123","endIpAddress":"123.123.123.124"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/firewallRules/rule1","name":"rule1","type":"Microsoft.DBforPostgreSQL/servers/firewallRules"}'} - headers: - cache-control: [no-cache] - content-length: ['434'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:51:02 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: '{"properties": {"startIpAddress": "0.0.0.0", "endIpAddress": "123.123.123.124"}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server firewall-rule update] - Connection: [keep-alive] - Content-Length: ['80'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/firewallRules/rule1?api-version=2017-12-01 - response: - body: {string: '{"operation":"UpsertElasticServerFirewallRules","startTime":"2018-03-19T23:51:04.93Z"}'} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/e9a238fb-ab0d-43b6-9bd6-1ed045775d81?api-version=2017-12-01'] - cache-control: [no-cache] - content-length: ['86'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:51:04 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/operationResults/e9a238fb-ab0d-43b6-9bd6-1ed045775d81?api-version=2017-12-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server firewall-rule update] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/e9a238fb-ab0d-43b6-9bd6-1ed045775d81?api-version=2017-12-01 - response: - body: {string: '{"name":"e9a238fb-ab0d-43b6-9bd6-1ed045775d81","status":"Succeeded","startTime":"2018-03-19T23:51:04.93Z"}'} - headers: - cache-control: [no-cache] - content-length: ['106'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:51:20 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server firewall-rule update] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/firewallRules/rule1?api-version=2017-12-01 - response: - body: {string: '{"properties":{"startIpAddress":"0.0.0.0","endIpAddress":"123.123.123.124"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/firewallRules/rule1","name":"rule1","type":"Microsoft.DBforPostgreSQL/servers/firewallRules"}'} - headers: - cache-control: [no-cache] - content-length: ['426'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:51:22 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server firewall-rule update] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/firewallRules/rule1?api-version=2017-12-01 - response: - body: {string: '{"properties":{"startIpAddress":"0.0.0.0","endIpAddress":"123.123.123.124"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/firewallRules/rule1","name":"rule1","type":"Microsoft.DBforPostgreSQL/servers/firewallRules"}'} - headers: - cache-control: [no-cache] - content-length: ['426'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:51:24 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: '{"properties": {"startIpAddress": "0.0.0.0", "endIpAddress": "255.255.255.255"}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server firewall-rule update] - Connection: [keep-alive] - Content-Length: ['80'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/firewallRules/rule1?api-version=2017-12-01 - response: - body: {string: '{"operation":"UpsertElasticServerFirewallRules","startTime":"2018-03-19T23:51:26.383Z"}'} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/c6c6035c-94cd-45ef-9beb-fe566edc474e?api-version=2017-12-01'] - cache-control: [no-cache] - content-length: ['87'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:51:25 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/operationResults/c6c6035c-94cd-45ef-9beb-fe566edc474e?api-version=2017-12-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server firewall-rule update] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/c6c6035c-94cd-45ef-9beb-fe566edc474e?api-version=2017-12-01 - response: - body: {string: '{"name":"c6c6035c-94cd-45ef-9beb-fe566edc474e","status":"Succeeded","startTime":"2018-03-19T23:51:26.383Z"}'} - headers: - cache-control: [no-cache] - content-length: ['107'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:51:42 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server firewall-rule update] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/firewallRules/rule1?api-version=2017-12-01 - response: - body: {string: '{"properties":{"startIpAddress":"0.0.0.0","endIpAddress":"255.255.255.255"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/firewallRules/rule1","name":"rule1","type":"Microsoft.DBforPostgreSQL/servers/firewallRules"}'} - headers: - cache-control: [no-cache] - content-length: ['426'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:51:44 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: '{"properties": {"startIpAddress": "123.123.123.123", "endIpAddress": "123.123.123.124"}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server firewall-rule create] - Connection: [keep-alive] - Content-Length: ['88'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/firewallRules/rule2?api-version=2017-12-01 - response: - body: {string: '{"operation":"UpsertElasticServerFirewallRules","startTime":"2018-03-19T23:51:46.28Z"}'} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/9226354e-2134-4ff9-b6c0-78b5dd74f415?api-version=2017-12-01'] - cache-control: [no-cache] - content-length: ['86'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:51:45 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/operationResults/9226354e-2134-4ff9-b6c0-78b5dd74f415?api-version=2017-12-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server firewall-rule create] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/9226354e-2134-4ff9-b6c0-78b5dd74f415?api-version=2017-12-01 - response: - body: {string: '{"name":"9226354e-2134-4ff9-b6c0-78b5dd74f415","status":"Succeeded","startTime":"2018-03-19T23:51:46.28Z"}'} - headers: - cache-control: [no-cache] - content-length: ['106'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:52:01 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server firewall-rule create] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/firewallRules/rule2?api-version=2017-12-01 - response: - body: {string: '{"properties":{"startIpAddress":"123.123.123.123","endIpAddress":"123.123.123.124"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/firewallRules/rule2","name":"rule2","type":"Microsoft.DBforPostgreSQL/servers/firewallRules"}'} - headers: - cache-control: [no-cache] - content-length: ['434'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:52:03 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server firewall-rule list] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/firewallRules?api-version=2017-12-01 - response: - body: {string: '{"value":[{"properties":{"startIpAddress":"0.0.0.0","endIpAddress":"255.255.255.255"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/firewallRules/rule1","name":"rule1","type":"Microsoft.DBforPostgreSQL/servers/firewallRules"},{"properties":{"startIpAddress":"123.123.123.123","endIpAddress":"123.123.123.124"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/firewallRules/rule2","name":"rule2","type":"Microsoft.DBforPostgreSQL/servers/firewallRules"}]}'} - headers: - cache-control: [no-cache] - content-length: ['873'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:52:05 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server firewall-rule delete] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/firewallRules/rule1?api-version=2017-12-01 - response: - body: {string: '{"operation":"DropElasticServerFirewallRule","startTime":"2018-03-19T23:52:07.673Z"}'} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/2dc74697-e16d-4a9f-a1da-1a5395056ac3?api-version=2017-12-01'] - cache-control: [no-cache] - content-length: ['84'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:52:07 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/operationResults/2dc74697-e16d-4a9f-a1da-1a5395056ac3?api-version=2017-12-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server firewall-rule delete] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/2dc74697-e16d-4a9f-a1da-1a5395056ac3?api-version=2017-12-01 - response: - body: {string: '{"name":"2dc74697-e16d-4a9f-a1da-1a5395056ac3","status":"Succeeded","startTime":"2018-03-19T23:52:07.673Z"}'} - headers: - cache-control: [no-cache] - content-length: ['107'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:52:23 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server firewall-rule list] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/firewallRules?api-version=2017-12-01 - response: - body: {string: '{"value":[{"properties":{"startIpAddress":"123.123.123.123","endIpAddress":"123.123.123.124"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/firewallRules/rule2","name":"rule2","type":"Microsoft.DBforPostgreSQL/servers/firewallRules"}]}'} - headers: - cache-control: [no-cache] - content-length: ['446'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:52:26 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server firewall-rule delete] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/firewallRules/rule2?api-version=2017-12-01 - response: - body: {string: '{"operation":"DropElasticServerFirewallRule","startTime":"2018-03-19T23:52:28.16Z"}'} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/73ceaa80-cf33-41a0-8252-fc46615a4d7b?api-version=2017-12-01'] - cache-control: [no-cache] - content-length: ['83'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:52:27 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/operationResults/73ceaa80-cf33-41a0-8252-fc46615a4d7b?api-version=2017-12-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1198'] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server firewall-rule delete] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/73ceaa80-cf33-41a0-8252-fc46615a4d7b?api-version=2017-12-01 - response: - body: {string: '{"name":"73ceaa80-cf33-41a0-8252-fc46615a4d7b","status":"Succeeded","startTime":"2018-03-19T23:52:28.16Z"}'} - headers: - cache-control: [no-cache] - content-length: ['106'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:52:44 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server firewall-rule list] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/firewallRules?api-version=2017-12-01 - response: - body: {string: '{"value":[]}'} - headers: - cache-control: [no-cache] - content-length: ['12'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:52:46 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres db list] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/databases?api-version=2017-12-01 - response: - body: {string: '{"value":[{"properties":{"charset":"UTF8","collation":"English_United - States.1252"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/databases/postgres","name":"postgres","type":"Microsoft.DBforPostgreSQL/servers/databases"}]}'} - headers: - cache-control: [no-cache] - content-length: ['434'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:52:47 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server configuration show] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/array_nulls?api-version=2017-12-01 - response: - body: {string: '{"properties":{"value":"on","description":"Enable input of NULL - elements in arrays.","defaultValue":"on","dataType":"Boolean","allowedValues":"on,off","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/array_nulls","name":"array_nulls","type":"Microsoft.DBforPostgreSQL/servers/configurations"}'} - headers: - cache-control: [no-cache] - content-length: ['542'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:52:49 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: '{"properties": {"value": "off"}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server configuration set] - Connection: [keep-alive] - Content-Length: ['32'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/array_nulls?api-version=2017-12-01 - response: - body: {string: '{"operation":"UpdateElasticServerConfig","startTime":"2018-03-19T23:52:51.937Z"}'} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/123d81d1-54f2-4b34-8e78-d00c8c156899?api-version=2017-12-01'] - cache-control: [no-cache] - content-length: ['80'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:52:51 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/operationResults/123d81d1-54f2-4b34-8e78-d00c8c156899?api-version=2017-12-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server configuration set] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/123d81d1-54f2-4b34-8e78-d00c8c156899?api-version=2017-12-01 - response: - body: {string: '{"name":"123d81d1-54f2-4b34-8e78-d00c8c156899","status":"Succeeded","startTime":"2018-03-19T23:52:51.937Z"}'} - headers: - cache-control: [no-cache] - content-length: ['107'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:53:07 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server configuration set] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/array_nulls?api-version=2017-12-01 - response: - body: {string: '{"properties":{"value":"off","description":"Enable input of NULL - elements in arrays.","defaultValue":"on","dataType":"Boolean","allowedValues":"on,off","source":"user-override"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/array_nulls","name":"array_nulls","type":"Microsoft.DBforPostgreSQL/servers/configurations"}'} - headers: - cache-control: [no-cache] - content-length: ['542'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:53:09 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: '{"properties": {"source": "system-default"}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server configuration set] - Connection: [keep-alive] - Content-Length: ['44'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/array_nulls?api-version=2017-12-01 - response: - body: {string: '{"operation":"UpdateElasticServerConfig","startTime":"2018-03-19T23:53:11.457Z"}'} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/7bb3f0c0-5f51-4da7-a980-8ac9d7be769a?api-version=2017-12-01'] - cache-control: [no-cache] - content-length: ['80'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:53:11 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/operationResults/7bb3f0c0-5f51-4da7-a980-8ac9d7be769a?api-version=2017-12-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1198'] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server configuration set] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/7bb3f0c0-5f51-4da7-a980-8ac9d7be769a?api-version=2017-12-01 - response: - body: {string: '{"name":"7bb3f0c0-5f51-4da7-a980-8ac9d7be769a","status":"Succeeded","startTime":"2018-03-19T23:53:11.457Z"}'} - headers: - cache-control: [no-cache] - content-length: ['107'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:53:27 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server configuration set] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/array_nulls?api-version=2017-12-01 - response: - body: {string: '{"properties":{"value":"on","description":"Enable input of NULL - elements in arrays.","defaultValue":"on","dataType":"Boolean","allowedValues":"on,off","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/array_nulls","name":"array_nulls","type":"Microsoft.DBforPostgreSQL/servers/configurations"}'} - headers: - cache-control: [no-cache] - content-length: ['542'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:53:28 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server configuration list] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations?api-version=2017-12-01 - response: - body: {string: '{"value":[{"properties":{"value":"on","description":"Enable input - of NULL elements in arrays.","defaultValue":"on","dataType":"Boolean","allowedValues":"on,off","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/array_nulls","name":"array_nulls","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"safe_encoding","description":"Sets - whether \"\\''\" is allowed in string literals.","defaultValue":"safe_encoding","dataType":"Enumeration","allowedValues":"safe_encoding,on,off","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/backslash_quote","name":"backslash_quote","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"hex","description":"Sets - the output format for bytea.","defaultValue":"hex","dataType":"Enumeration","allowedValues":"escape,hex","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/bytea_output","name":"bytea_output","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"on","description":"Check - function bodies during CREATE FUNCTION.","defaultValue":"on","dataType":"Boolean","allowedValues":"on,off","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/check_function_bodies","name":"check_function_bodies","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"sql_ascii","description":"Sets - the client''s character set encoding.","defaultValue":"sql_ascii","dataType":"Enumeration","allowedValues":"BIG5,EUC_CN,EUC_JP,EUC_JIS_2004,EUC_KR,EUC_TW,GB18030,GBK,ISO_8859_5,ISO_8859_6,ISO_8859_7,ISO_8859_8,JOHAB,KOI8R,KOI8U,LATIN1,LATIN2,LATIN3,LATIN4,LATIN5,LATIN6,LATIN7,LATIN8,LATIN9,LATIN10,MULE_INTERNAL,SJIS,SHIFT_JIS_2004,SQL_ASCII,UHC,UTF8,WIN866,WIN874,WIN1250,WIN1251,WIN1252,WIN1253,WIN1254,WIN1255,WIN1256,WIN1257,WIN1258","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/client_encoding","name":"client_encoding","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"notice","description":"Sets - the message levels that are sent to the client.","defaultValue":"notice","dataType":"Enumeration","allowedValues":"debug5,debug4,debug3,debug2,debug1,log,notice,warning,error","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/client_min_messages","name":"client_min_messages","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"partition","description":"Enables - the planner to use constraints to optimize queries.","defaultValue":"partition","dataType":"Enumeration","allowedValues":"partition,on,off","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/constraint_exclusion","name":"constraint_exclusion","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"0.005","description":"Sets - the planner''s estimate of the cost of processing each index entry during - an index scan.","defaultValue":"0.005","dataType":"Numeric","allowedValues":"0-1.79769e+308","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/cpu_index_tuple_cost","name":"cpu_index_tuple_cost","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"0.0025","description":"Sets - the planner''s estimate of the cost of processing each operator or function - call.","defaultValue":"0.0025","dataType":"Numeric","allowedValues":"0-1.79769e+308","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/cpu_operator_cost","name":"cpu_operator_cost","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"0.01","description":"Sets - the planner''s estimate of the cost of processing each tuple (row).","defaultValue":"0.01","dataType":"Numeric","allowedValues":"0-1.79769e+308","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/cpu_tuple_cost","name":"cpu_tuple_cost","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"0.1","description":"Sets - the planner''s estimate of the fraction of a cursor''s rows that will be retrieved.","defaultValue":"0.1","dataType":"Numeric","allowedValues":"0-1","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/cursor_tuple_fraction","name":"cursor_tuple_fraction","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"iso, - mdy","description":"Sets the display format for date and time values.","defaultValue":"iso, - mdy","dataType":"String","allowedValues":"(iso|postgres|sql|german)\\,\\s(dmy|mdy|ymd)","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/datestyle","name":"datestyle","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"1000","description":"Sets - the amount of time, in milliseconds, to wait on a lock before checking for - deadlock.","defaultValue":"1000","dataType":"Integer","allowedValues":"1-2147483647","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/deadlock_timeout","name":"deadlock_timeout","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"off","description":"Logs - each query''s execution plan.","defaultValue":"off","dataType":"Boolean","allowedValues":"on,off","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/debug_print_plan","name":"debug_print_plan","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"off","description":"Logs - each query''s rewritten parse tree.","defaultValue":"off","dataType":"Boolean","allowedValues":"on,off","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/debug_print_rewritten","name":"debug_print_rewritten","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"100","description":"Sets - the default statistics target.","defaultValue":"100","dataType":"Integer","allowedValues":"1-10000","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/default_statistics_target","name":"default_statistics_target","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"pg_catalog.english","description":"Sets - default text search configuration.","defaultValue":"pg_catalog.english","dataType":"String","allowedValues":"[A-Za-z\\._]+","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/default_text_search_config","name":"default_text_search_config","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"off","description":"Sets - the default deferrable status of new transactions.","defaultValue":"off","dataType":"Boolean","allowedValues":"on,off","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/default_transaction_deferrable","name":"default_transaction_deferrable","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"read - committed","description":"Sets the transaction isolation level of each new - transaction.","defaultValue":"read committed","dataType":"Enumeration","allowedValues":"serializable,repeatable - read,read committed,read uncommitted","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/default_transaction_isolation","name":"default_transaction_isolation","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"off","description":"Sets - the default read-only status of new transactions.","defaultValue":"off","dataType":"Boolean","allowedValues":"on,off","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/default_transaction_read_only","name":"default_transaction_read_only","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"off","description":"Create - new tables with OIDs by default.","defaultValue":"off","dataType":"Boolean","allowedValues":"on,off","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/default_with_oids","name":"default_with_oids","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"on","description":"Enables - the planner''s use of bitmap-scan plans.","defaultValue":"on","dataType":"Boolean","allowedValues":"on,off","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/enable_bitmapscan","name":"enable_bitmapscan","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"on","description":"Enables - the planner''s use of hashed aggregation plans.","defaultValue":"on","dataType":"Boolean","allowedValues":"on,off","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/enable_hashagg","name":"enable_hashagg","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"on","description":"Enables - the planner''s use of hash join plans.","defaultValue":"on","dataType":"Boolean","allowedValues":"on,off","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/enable_hashjoin","name":"enable_hashjoin","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"on","description":"Enables - the planner''s use of index-only-scan plans.","defaultValue":"on","dataType":"Boolean","allowedValues":"on,off","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/enable_indexonlyscan","name":"enable_indexonlyscan","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"on","description":"Enables - the planner''s use of index-scan plans.","defaultValue":"on","dataType":"Boolean","allowedValues":"on,off","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/enable_indexscan","name":"enable_indexscan","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"on","description":"Enables - the planner''s use of materialization.","defaultValue":"on","dataType":"Boolean","allowedValues":"on,off","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/enable_material","name":"enable_material","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"on","description":"Enables - the planner''s use of merge join plans.","defaultValue":"on","dataType":"Boolean","allowedValues":"on,off","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/enable_mergejoin","name":"enable_mergejoin","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"on","description":"Enables - the planner''s use of nested-loop join plans.","defaultValue":"on","dataType":"Boolean","allowedValues":"on,off","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/enable_nestloop","name":"enable_nestloop","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"on","description":"Enables - the planner''s use of sequential-scan plans.","defaultValue":"on","dataType":"Boolean","allowedValues":"on,off","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/enable_seqscan","name":"enable_seqscan","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"on","description":"Enables - the planner''s use of explicit sort steps.","defaultValue":"on","dataType":"Boolean","allowedValues":"on,off","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/enable_sort","name":"enable_sort","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"on","description":"Enables - the planner''s use of TID scan plans.","defaultValue":"on","dataType":"Boolean","allowedValues":"on,off","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/enable_tidscan","name":"enable_tidscan","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"on","description":"Warn - about backslash escapes in ordinary string literals.","defaultValue":"on","dataType":"Boolean","allowedValues":"on,off","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/escape_string_warning","name":"escape_string_warning","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"off","description":"Terminate - session on any error.","defaultValue":"off","dataType":"Boolean","allowedValues":"on,off","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/exit_on_error","name":"exit_on_error","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"0","description":"Sets - the number of digits displayed for floating-point values.","defaultValue":"0","dataType":"Integer","allowedValues":"-15-3","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/extra_float_digits","name":"extra_float_digits","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"8","description":"Sets - the FROM-list size beyond which subqueries are not collapsed.","defaultValue":"8","dataType":"Integer","allowedValues":"1-2147483647","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/from_collapse_limit","name":"from_collapse_limit","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"on","description":"Enables - genetic query optimization.","defaultValue":"on","dataType":"Boolean","allowedValues":"on,off","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/geqo","name":"geqo","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"5","description":"GEQO: - effort is used to set the default for other GEQO parameters.","defaultValue":"5","dataType":"Integer","allowedValues":"1-10","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/geqo_effort","name":"geqo_effort","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"0","description":"GEQO: - number of iterations of the algorithm.","defaultValue":"0","dataType":"Integer","allowedValues":"0-2147483647","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/geqo_generations","name":"geqo_generations","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"0","description":"GEQO: - number of individuals in the population.","defaultValue":"0","dataType":"Integer","allowedValues":"0-2147483647","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/geqo_pool_size","name":"geqo_pool_size","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"0.0","description":"GEQO: - seed for random path selection.","defaultValue":"0.0","dataType":"Numeric","allowedValues":"0-1","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/geqo_seed","name":"geqo_seed","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"2.0","description":"GEQO: - selective pressure within the population.","defaultValue":"2.0","dataType":"Numeric","allowedValues":"1.5-2","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/geqo_selection_bias","name":"geqo_selection_bias","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"12","description":"Sets - the threshold of FROM items beyond which GEQO is used.","defaultValue":"12","dataType":"Integer","allowedValues":"2-2147483647","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/geqo_threshold","name":"geqo_threshold","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"0","description":"Sets - the maximum allowed result for exact search by GIN.","defaultValue":"0","dataType":"Integer","allowedValues":"0-2147483647","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/gin_fuzzy_search_limit","name":"gin_fuzzy_search_limit","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"postgres","description":"Sets - the display format for interval values.","defaultValue":"postgres","dataType":"Enumeration","allowedValues":"postgres,postgres_verbose,sql_standard,iso_8601","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/intervalstyle","name":"intervalstyle","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"8","description":"Sets - the FROM-list size beyond which JOIN constructs are not flattened.","defaultValue":"8","dataType":"Integer","allowedValues":"1-2147483647","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/join_collapse_limit","name":"join_collapse_limit","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"0","description":"Sets - the maximum allowed duration (in milliseconds) of any wait for a lock. 0 turns - this off.","defaultValue":"0","dataType":"Integer","allowedValues":"0-2147483647","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/lock_timeout","name":"lock_timeout","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"off","description":"Logs - each checkpoint.","defaultValue":"off","dataType":"Boolean","allowedValues":"on,off","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/log_checkpoints","name":"log_checkpoints","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"on","description":"Logs - each successful connection.","defaultValue":"on","dataType":"Boolean","allowedValues":"on,off","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/log_connections","name":"log_connections","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"off","description":"Logs - end of a session, including duration.","defaultValue":"off","dataType":"Boolean","allowedValues":"on,off","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/log_disconnections","name":"log_disconnections","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"off","description":"Logs - the duration of each completed SQL statement.","defaultValue":"off","dataType":"Boolean","allowedValues":"on,off","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/log_duration","name":"log_duration","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"default","description":"Sets - the verbosity of logged messages.","defaultValue":"default","dataType":"Enumeration","allowedValues":"terse,default,verbose","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/log_error_verbosity","name":"log_error_verbosity","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"off","description":"Logs - long lock waits.","defaultValue":"off","dataType":"Boolean","allowedValues":"on,off","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/log_lock_waits","name":"log_lock_waits","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"-1","description":"Sets - the minimum execution time (in milliseconds) above which statements will be - logged. -1 disables logging statement durations.","defaultValue":"-1","dataType":"Integer","allowedValues":"-1-2147483647","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/log_min_duration_statement","name":"log_min_duration_statement","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"error","description":"Causes - all statements generating error at or above this level to be logged.","defaultValue":"error","dataType":"Enumeration","allowedValues":"debug5,debug4,debug3,debug2,debug1,info,notice,warning,error,log,fatal,panic","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/log_min_error_statement","name":"log_min_error_statement","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"warning","description":"Sets - the message levels that are logged.","defaultValue":"warning","dataType":"Enumeration","allowedValues":"debug5,debug4,debug3,debug2,debug1,info,notice,warning,error,log,fatal,panic","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/log_min_messages","name":"log_min_messages","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"none","description":"Sets - the type of statements logged.","defaultValue":"none","dataType":"Enumeration","allowedValues":"none,ddl,mod,all","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/log_statement","name":"log_statement","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"off","description":"When - generating SQL fragments, quote all identifiers.","defaultValue":"off","dataType":"Boolean","allowedValues":"on,off","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/quote_all_identifiers","name":"quote_all_identifiers","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"4.0","description":"Sets - the planner''s estimate of the cost of a nonsequentially fetched disk page.","defaultValue":"4.0","dataType":"Numeric","allowedValues":"0-1.79769e+308","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/random_page_cost","name":"random_page_cost","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"\"$user\", - public","description":"Sets the schema search order for names that are not - schema-qualified.","defaultValue":"\"$user\", public","dataType":"String","allowedValues":"[A-Za-z.\"$, - ]+","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/search_path","name":"search_path","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"1.0","description":"Sets - the planner''s estimate of the cost of a sequentially fetched disk page.","defaultValue":"1.0","dataType":"Numeric","allowedValues":"0-1.79769e+308","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/seq_page_cost","name":"seq_page_cost","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"on","description":"Causes - subtables to be included by default in various commands.","defaultValue":"on","dataType":"Boolean","allowedValues":"on,off","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/sql_inheritance","name":"sql_inheritance","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"0","description":"Sets - the maximum allowed duration (in milliseconds) of any statement. 0 turns this - off.","defaultValue":"0","dataType":"Integer","allowedValues":"0-2147483647","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/statement_timeout","name":"statement_timeout","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"on","description":"Enable - synchronized sequential scans.","defaultValue":"on","dataType":"Boolean","allowedValues":"on,off","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/synchronize_seqscans","name":"synchronize_seqscans","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"on","description":"Sets - the current transaction''s synchronization level.","defaultValue":"on","dataType":"Enumeration","allowedValues":"local,remote_write,on,off","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/synchronous_commit","name":"synchronous_commit","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"off","description":"Treats - \"expr=NULL\" as \"expr IS NULL\".","defaultValue":"off","dataType":"Boolean","allowedValues":"on,off","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/transform_null_equals","name":"transform_null_equals","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"base64","description":"Sets - how binary values are to be encoded in XML.","defaultValue":"base64","dataType":"Enumeration","allowedValues":"base64,hex","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/xmlbinary","name":"xmlbinary","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"content","description":"Sets - whether XML data in implicit parsing and serialization operations is to be - considered as documents or content fragments.","defaultValue":"content","dataType":"Enumeration","allowedValues":"content,document","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/xmloption","name":"xmloption","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"off","description":"Forces - use of parallel query facilities.","defaultValue":"off","dataType":"Enumeration","allowedValues":"off,on,regress","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/force_parallel_mode","name":"force_parallel_mode","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"0","description":"Sets - the maximum allowed duration of any idling transaction.","defaultValue":"0","dataType":"Integer","allowedValues":"0-2147483647","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/idle_in_transaction_session_timeout","name":"idle_in_transaction_session_timeout","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"0","description":"Sets - the maximum number of parallel processes per executor node.","defaultValue":"0","dataType":"Integer","allowedValues":"0-1024","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/max_parallel_workers_per_gather","name":"max_parallel_workers_per_gather","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"8388608","description":"Sets - the minimum size of relations to be considered for parallel scan.","defaultValue":"8388608","dataType":"Integer","allowedValues":"0-715827882","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/min_parallel_relation_size","name":"min_parallel_relation_size","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"1000","description":"Sets - the planner''s estimate of the cost of starting up worker processes for parallel - query.","defaultValue":"1000","dataType":"Numeric","allowedValues":"0-1.79769e+308","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/parallel_setup_cost","name":"parallel_setup_cost","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"0.1","description":"Sets - the planner''s estimate of the cost of passing each tuple (row) from worker - to master backend.","defaultValue":"0.1","dataType":"Numeric","allowedValues":"0-1.79769e+308","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/parallel_tuple_cost","name":"parallel_tuple_cost","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"8096","description":"Sets - the amount of memory to be used by internal sort operations and hash tables - before writing to temporary disk files.","defaultValue":"8096","dataType":"Integer","allowedValues":"8096-2097151","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/work_mem","name":"work_mem","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"8096","description":"Sets - the maximum number of temporary buffers used by each database session.","defaultValue":"8096","dataType":"Integer","allowedValues":"8096-16384","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/temp_buffers","name":"temp_buffers","type":"Microsoft.DBforPostgreSQL/servers/configurations"},{"properties":{"value":"3","description":"Sets - how many days a log file is saved for.","defaultValue":"3","dataType":"Integer","allowedValues":"1-7","source":"system-default"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/configurations/log_retention_days","name":"log_retention_days","type":"Microsoft.DBforPostgreSQL/servers/configurations"}]}'} - headers: - cache-control: [no-cache] - content-length: ['45279'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:53:31 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server-logs list] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/logFiles?api-version=2017-12-01 - response: - body: {string: '{"value":[{"properties":{"name":"postgresql-2018-03-19_234930.log","sizeInKB":4,"createdTime":"0001-01-01T00:00:00+00:00","lastModifiedTime":"2018-03-19T23:53:11+00:00","type":"text","url":"https://wasd2prodbrso1fse36.file.core.windows.net/0b4f4483737248b28cc9e782d1dcc7de/pg_log/postgresql-2018-03-19_234930.log?sv=2015-04-05&sr=f&sig=CM%2Fng6VmJDjhGIsQdkiqQZGqzOX%2FEev0so84vUTaG58%3D&se=2018-03-20T00%3A53%3A33Z&sp=r"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000002/logFiles/postgresql-2018-03-19_234930.log","name":"postgresql-2018-03-19_234930.log","type":"Microsoft.DBforPostgreSQL/servers/logFiles"}]}'} - headers: - cache-control: [no-cache] - content-length: ['818'] - content-type: [application/json; charset=utf-8] - date: ['Mon, 19 Mar 2018 23:53:33 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [group delete] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 resourcemanagementclient/1.2.1 Azure-SDK-For-Python - AZURECLI/2.0.30] - accept-language: [en-US] - method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/clitest.rg000001?api-version=2017-05-10 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - content-length: ['0'] - date: ['Mon, 19 Mar 2018 23:53:33 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1DTElURVNUOjJFUkdITVlCMkdXVUdRQUlNQ1lBTlc3UEMyWFU2RzdQM1FTUVc2SHxBN0E3NjMxNEExNzk1REIxLVdFU1RVUyIsImpvYkxvY2F0aW9uIjoid2VzdHVzIn0?api-version=2017-05-10'] - pragma: [no-cache] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1198'] - status: {code: 202, message: Accepted} -version: 1 diff --git a/src/rdbms/azext_rdbms/tests/recordings/test_postgres_server_mgmt.yaml b/src/rdbms/azext_rdbms/tests/recordings/test_postgres_server_mgmt.yaml index 451bbdca6fb..87d6b3bd747 100644 --- a/src/rdbms/azext_rdbms/tests/recordings/test_postgres_server_mgmt.yaml +++ b/src/rdbms/azext_rdbms/tests/recordings/test_postgres_server_mgmt.yaml @@ -1,91 +1,94 @@ interactions: - request: - body: '{"location": "westus", "tags": {"use": "az-test"}}' + body: '{"location": "westus", "tags": {"product": "azurecli", "cause": "automation", + "date": "2018-03-30T23:21:38Z"}}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] CommandName: [group create] Connection: [keep-alive] - Content-Length: ['50'] + Content-Length: ['110'] Content-Type: [application/json; charset=utf-8] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 resourcemanagementclient/1.2.1 Azure-SDK-For-Python - AZURECLI/2.0.30] + msrest_azure/0.4.24 resourcemanagementclient/1.2.1 Azure-SDK-For-Python + AZURECLI/2.0.31] accept-language: [en-US] method: PUT uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/clitest.rg000001?api-version=2017-05-10 response: - body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001","name":"clitest.rg000001","location":"westus","tags":{"use":"az-test"},"properties":{"provisioningState":"Succeeded"}}'} + body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001","name":"clitest.rg000001","location":"westus","tags":{"product":"azurecli","cause":"automation","date":"2018-03-30T23:21:38Z"},"properties":{"provisioningState":"Succeeded"}}'} headers: cache-control: [no-cache] - content-length: ['328'] + content-length: ['384'] content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:12:36 GMT'] + date: ['Fri, 30 Mar 2018 23:21:38 GMT'] expires: ['-1'] pragma: [no-cache] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1198'] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 201, message: Created} - request: - body: '{"location": "westus", "tags": {"use": "az-test"}}' + body: '{"location": "westus", "tags": {"product": "azurecli", "cause": "automation", + "date": "2018-03-30T23:21:39Z"}}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] CommandName: [group create] Connection: [keep-alive] - Content-Length: ['50'] + Content-Length: ['110'] Content-Type: [application/json; charset=utf-8] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 resourcemanagementclient/1.2.1 Azure-SDK-For-Python - AZURECLI/2.0.30] + msrest_azure/0.4.24 resourcemanagementclient/1.2.1 Azure-SDK-For-Python + AZURECLI/2.0.31] accept-language: [en-US] method: PUT uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/clitest.rg000002?api-version=2017-05-10 response: - body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000002","name":"clitest.rg000002","location":"westus","tags":{"use":"az-test"},"properties":{"provisioningState":"Succeeded"}}'} + body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000002","name":"clitest.rg000002","location":"westus","tags":{"product":"azurecli","cause":"automation","date":"2018-03-30T23:21:39Z"},"properties":{"provisioningState":"Succeeded"}}'} headers: cache-control: [no-cache] - content-length: ['328'] + content-length: ['384'] content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:12:37 GMT'] + date: ['Fri, 30 Mar 2018 23:21:41 GMT'] expires: ['-1'] pragma: [no-cache] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1197'] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 201, message: Created} - request: - body: '{"sku": {"name": "GP_Gen4_2"}, "properties": {"storageProfile": {}, "createMode": - "Default", "administratorLogin": "cloudsa", "administratorLoginPassword": "SecretPassword123"}, - "location": "brazilsouth", "tags": {"key": "1"}}' + body: '{"sku": {"name": "GP_Gen5_2"}, "properties": {"storageProfile": {"backupRetentionDays": + 10, "geoRedundantBackup": "Enabled"}, "createMode": "Default", "administratorLogin": + "cloudsa", "administratorLoginPassword": "SecretPassword123"}, "location": "westus", + "tags": {"key": "1"}}' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] CommandName: [postgres server create] Connection: [keep-alive] - Content-Length: ['226'] + Content-Length: ['279'] Content-Type: [application/json; charset=utf-8] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] + msrest_azure/0.4.24 azure-mgmt-rdbms/2017-12-01 Azure-SDK-For-Python AZURECLI/2.0.31] accept-language: [en-US] method: PUT uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003?api-version=2017-12-01 response: - body: {string: '{"operation":"UpsertElasticServer","startTime":"2018-03-20T00:12:40.037Z"}'} + body: {string: '{"operation":"UpsertElasticServer","startTime":"2018-03-30T23:21:43.177Z"}'} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/c4e25a06-2656-42bd-b306-9a31e9675d89?api-version=2017-12-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/westus/azureAsyncOperation/6780f4bf-bbea-4ce7-9618-91fef6b53a9a?api-version=2017-12-01'] cache-control: [no-cache] content-length: ['74'] content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:12:39 GMT'] + date: ['Fri, 30 Mar 2018 23:21:43 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/operationResults/c4e25a06-2656-42bd-b306-9a31e9675d89?api-version=2017-12-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/westus/operationResults/6780f4bf-bbea-4ce7-9618-91fef6b53a9a?api-version=2017-12-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1197'] + x-ms-ratelimit-remaining-subscription-writes: ['1199'] status: {code: 202, message: Accepted} - request: body: null @@ -95,16 +98,16 @@ interactions: CommandName: [postgres server create] Connection: [keep-alive] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] + msrest_azure/0.4.24 azure-mgmt-rdbms/2017-12-01 Azure-SDK-For-Python AZURECLI/2.0.31] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/c4e25a06-2656-42bd-b306-9a31e9675d89?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/westus/azureAsyncOperation/6780f4bf-bbea-4ce7-9618-91fef6b53a9a?api-version=2017-12-01 response: - body: {string: '{"name":"c4e25a06-2656-42bd-b306-9a31e9675d89","status":"InProgress","startTime":"2018-03-20T00:12:40.037Z"}'} + body: {string: '{"name":"6780f4bf-bbea-4ce7-9618-91fef6b53a9a","status":"InProgress","startTime":"2018-03-30T23:21:43.177Z"}'} headers: cache-control: [no-cache] content-length: ['108'] content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:13:40 GMT'] + date: ['Fri, 30 Mar 2018 23:22:43 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -121,16 +124,16 @@ interactions: CommandName: [postgres server create] Connection: [keep-alive] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] + msrest_azure/0.4.24 azure-mgmt-rdbms/2017-12-01 Azure-SDK-For-Python AZURECLI/2.0.31] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/c4e25a06-2656-42bd-b306-9a31e9675d89?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/westus/azureAsyncOperation/6780f4bf-bbea-4ce7-9618-91fef6b53a9a?api-version=2017-12-01 response: - body: {string: '{"name":"c4e25a06-2656-42bd-b306-9a31e9675d89","status":"Succeeded","startTime":"2018-03-20T00:12:40.037Z"}'} + body: {string: '{"name":"6780f4bf-bbea-4ce7-9618-91fef6b53a9a","status":"Succeeded","startTime":"2018-03-30T23:21:43.177Z"}'} headers: cache-control: [no-cache] content-length: ['107'] content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:14:43 GMT'] + date: ['Fri, 30 Mar 2018 23:23:43 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -147,16 +150,16 @@ interactions: CommandName: [postgres server create] Connection: [keep-alive] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] + msrest_azure/0.4.24 azure-mgmt-rdbms/2017-12-01 Azure-SDK-For-Python AZURECLI/2.0.31] method: GET uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003?api-version=2017-12-01 response: - body: {string: '{"sku":{"name":"GP_Gen4_2","tier":"GeneralPurpose","family":"Gen4","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"9.6","sslEnforcement":"Enabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.postgres.database.azure.com","earliestRestoreDate":"2018-03-20T00:22:40.38+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"brazilsouth","tags":{"key":"1"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforPostgreSQL/servers"}'} + body: {string: '{"sku":{"name":"GP_Gen5_2","tier":"GeneralPurpose","family":"Gen5","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":10,"geoRedundantBackup":"Enabled"},"version":"9.6","sslEnforcement":"Enabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.postgres.database.azure.com","earliestRestoreDate":"2018-03-30T23:31:43.553+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"westus","tags":{"key":"1"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforPostgreSQL/servers"}'} headers: cache-control: [no-cache] - content-length: ['947'] + content-length: ['943'] content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:14:44 GMT'] + date: ['Fri, 30 Mar 2018 23:23:44 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -174,17 +177,17 @@ interactions: Connection: [keep-alive] Content-Type: [application/json; charset=utf-8] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] + msrest_azure/0.4.24 azure-mgmt-rdbms/2017-12-01 Azure-SDK-For-Python AZURECLI/2.0.31] accept-language: [en-US] method: GET uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003?api-version=2017-12-01 response: - body: {string: '{"sku":{"name":"GP_Gen4_2","tier":"GeneralPurpose","family":"Gen4","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"9.6","sslEnforcement":"Enabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.postgres.database.azure.com","earliestRestoreDate":"2018-03-20T00:22:40.38+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"brazilsouth","tags":{"key":"1"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforPostgreSQL/servers"}'} + body: {string: '{"sku":{"name":"GP_Gen5_2","tier":"GeneralPurpose","family":"Gen5","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":10,"geoRedundantBackup":"Enabled"},"version":"9.6","sslEnforcement":"Enabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.postgres.database.azure.com","earliestRestoreDate":"2018-03-30T23:31:43.553+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"westus","tags":{"key":"1"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforPostgreSQL/servers"}'} headers: cache-control: [no-cache] - content-length: ['947'] + content-length: ['943'] content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:14:45 GMT'] + date: ['Fri, 30 Mar 2018 23:23:45 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -198,21 +201,21 @@ interactions: headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server update] + CommandName: [postgres server georestore] Connection: [keep-alive] Content-Type: [application/json; charset=utf-8] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] + msrest_azure/0.4.24 azure-mgmt-rdbms/2017-12-01 Azure-SDK-For-Python AZURECLI/2.0.31] accept-language: [en-US] method: GET uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003?api-version=2017-12-01 response: - body: {string: '{"sku":{"name":"GP_Gen4_2","tier":"GeneralPurpose","family":"Gen4","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"9.6","sslEnforcement":"Enabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.postgres.database.azure.com","earliestRestoreDate":"2018-03-20T00:22:40.38+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"brazilsouth","tags":{"key":"1"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforPostgreSQL/servers"}'} + body: {string: '{"sku":{"name":"GP_Gen5_2","tier":"GeneralPurpose","family":"Gen5","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":10,"geoRedundantBackup":"Enabled"},"version":"9.6","sslEnforcement":"Enabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.postgres.database.azure.com","earliestRestoreDate":"2018-03-30T23:31:43.553+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"westus","tags":{"key":"1"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforPostgreSQL/servers"}'} headers: cache-control: [no-cache] - content-length: ['947'] + content-length: ['943'] content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:14:47 GMT'] + date: ['Fri, 30 Mar 2018 23:23:46 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -222,31 +225,32 @@ interactions: x-content-type-options: [nosniff] status: {code: 200, message: OK} - request: - body: '{"properties": {"storageProfile": {"backupRetentionDays": 7, "geoRedundantBackup": - "Disabled", "storageMB": 5120}, "administratorLoginPassword": "SecretPassword456", - "sslEnforcement": "Disabled"}, "tags": {"key": "2"}}' + body: 'b''b\''{"sku": {"name": "GP_Gen5_2"}, "properties": {"storageProfile": + {"backupRetentionDays": 20, "geoRedundantBackup": "Disabled"}, "createMode": + "GeoRestore", "sourceServerId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003"}, + "location": "koreasouth"}\''''' headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server update] + CommandName: [postgres server georestore] Connection: [keep-alive] - Content-Length: ['218'] + Content-Length: ['453'] Content-Type: [application/json; charset=utf-8] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] + msrest_azure/0.4.24 azure-mgmt-rdbms/2017-12-01 Azure-SDK-For-Python AZURECLI/2.0.31] accept-language: [en-US] - method: PATCH - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003?api-version=2017-12-01 + method: PUT + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000002/providers/Microsoft.DBforPostgreSQL/servers/azuredbcligeorestore000005?api-version=2017-12-01 response: - body: {string: '{"operation":"UpsertElasticServer","startTime":"2018-03-20T00:14:49.563Z"}'} + body: {string: '{"operation":"RestoreElasticServer","startTime":"2018-03-30T23:23:49.45Z"}'} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/41291156-1c05-447d-972a-3c276fcf9fd6?api-version=2017-12-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/koreasouth/azureAsyncOperation/55fc425f-b571-4df3-81d7-723fa6528dbb?api-version=2017-12-01'] cache-control: [no-cache] content-length: ['74'] content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:14:49 GMT'] + date: ['Fri, 30 Mar 2018 23:23:49 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/operationResults/41291156-1c05-447d-972a-3c276fcf9fd6?api-version=2017-12-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/koreasouth/operationResults/55fc425f-b571-4df3-81d7-723fa6528dbb?api-version=2017-12-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] @@ -258,45 +262,20 @@ interactions: headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server update] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/41291156-1c05-447d-972a-3c276fcf9fd6?api-version=2017-12-01 - response: - body: {string: '{"name":"41291156-1c05-447d-972a-3c276fcf9fd6","status":"Succeeded","startTime":"2018-03-20T00:14:49.563Z"}'} - headers: - cache-control: [no-cache] - content-length: ['107'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:15:50 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server update] + CommandName: [postgres server georestore] Connection: [keep-alive] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] + msrest_azure/0.4.24 azure-mgmt-rdbms/2017-12-01 Azure-SDK-For-Python AZURECLI/2.0.31] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/koreasouth/azureAsyncOperation/55fc425f-b571-4df3-81d7-723fa6528dbb?api-version=2017-12-01 response: - body: {string: '{"sku":{"name":"GP_Gen4_2","tier":"GeneralPurpose","family":"Gen4","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"9.6","sslEnforcement":"Disabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.postgres.database.azure.com","earliestRestoreDate":"2018-03-20T00:22:40.38+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"brazilsouth","tags":{"key":"2"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforPostgreSQL/servers"}'} + body: {string: '{"name":"55fc425f-b571-4df3-81d7-723fa6528dbb","status":"Failed","startTime":"2018-03-30T23:23:49.45Z","error":{"code":"SubscriptionDoesNotHaveServer","message":"Subscription + ''707595a1-1498-4b7d-9771-cf0455939d2c'' does not have the server ''azuredbclitest000003''."}}'} headers: cache-control: [no-cache] - content-length: ['948'] + content-length: ['308'] content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:15:51 GMT'] + date: ['Fri, 30 Mar 2018 23:24:00 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -310,131 +289,21 @@ interactions: headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server update] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003?api-version=2017-12-01 - response: - body: {string: '{"sku":{"name":"GP_Gen4_2","tier":"GeneralPurpose","family":"Gen4","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"9.6","sslEnforcement":"Disabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.postgres.database.azure.com","earliestRestoreDate":"2018-03-20T00:22:40.38+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"brazilsouth","tags":{"key":"2"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforPostgreSQL/servers"}'} - headers: - cache-control: [no-cache] - content-length: ['948'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:15:54 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: '{"sku": {"name": "gp_Gen4_4", "tier": "GeneralPurpose", "capacity": 4, - "family": "Gen4"}, "properties": {"storageProfile": {"backupRetentionDays": - 7, "geoRedundantBackup": "Disabled", "storageMB": 5120}}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server update] + CommandName: [postgres server list] Connection: [keep-alive] - Content-Length: ['204'] Content-Type: [application/json; charset=utf-8] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] + msrest_azure/0.4.24 azure-mgmt-rdbms/2017-12-01 Azure-SDK-For-Python AZURECLI/2.0.31] accept-language: [en-US] - method: PATCH - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003?api-version=2017-12-01 - response: - body: {string: '{"operation":"UpsertElasticServer","startTime":"2018-03-20T00:15:56.963Z"}'} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/e21a0387-f294-4502-b97c-11113f7e9d2b?api-version=2017-12-01'] - cache-control: [no-cache] - content-length: ['74'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:15:56 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/operationResults/e21a0387-f294-4502-b97c-11113f7e9d2b?api-version=2017-12-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server update] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/e21a0387-f294-4502-b97c-11113f7e9d2b?api-version=2017-12-01 - response: - body: {string: '{"name":"e21a0387-f294-4502-b97c-11113f7e9d2b","status":"InProgress","startTime":"2018-03-20T00:15:56.963Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:16:58 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server update] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/e21a0387-f294-4502-b97c-11113f7e9d2b?api-version=2017-12-01 - response: - body: {string: '{"name":"e21a0387-f294-4502-b97c-11113f7e9d2b","status":"Succeeded","startTime":"2018-03-20T00:15:56.963Z"}'} - headers: - cache-control: [no-cache] - content-length: ['107'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:17:58 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server update] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers?api-version=2017-12-01 response: - body: {string: '{"sku":{"name":"GP_Gen4_4","tier":"GeneralPurpose","family":"Gen4","capacity":4},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"9.6","sslEnforcement":"Disabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.postgres.database.azure.com","earliestRestoreDate":"2018-03-20T00:22:40.38+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"brazilsouth","tags":{"key":"2"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforPostgreSQL/servers"}'} + body: {string: '{"value":[{"sku":{"name":"GP_Gen5_2","tier":"GeneralPurpose","family":"Gen5","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":10,"geoRedundantBackup":"Enabled"},"version":"9.6","sslEnforcement":"Enabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.postgres.database.azure.com","earliestRestoreDate":"2018-03-30T23:31:43.553+00:00","replicationRole":"","primaryServerId":""},"location":"westus","tags":{"key":"1"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforPostgreSQL/servers"}]}'} headers: cache-control: [no-cache] - content-length: ['948'] + content-length: ['931'] content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:18:00 GMT'] + date: ['Fri, 30 Mar 2018 23:24:01 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -448,21 +317,21 @@ interactions: headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server show] + CommandName: [postgres server list] Connection: [keep-alive] Content-Type: [application/json; charset=utf-8] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] + msrest_azure/0.4.24 azure-mgmt-rdbms/2017-12-01 Azure-SDK-For-Python AZURECLI/2.0.31] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000002/providers/Microsoft.DBforPostgreSQL/servers?api-version=2017-12-01 response: - body: {string: '{"sku":{"name":"GP_Gen4_4","tier":"GeneralPurpose","family":"Gen4","capacity":4},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"9.6","sslEnforcement":"Disabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.postgres.database.azure.com","earliestRestoreDate":"2018-03-20T00:22:40.38+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"brazilsouth","tags":{"key":"2"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforPostgreSQL/servers"}'} + body: {string: '{"value":[]}'} headers: cache-control: [no-cache] - content-length: ['948'] + content-length: ['12'] content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:18:02 GMT'] + date: ['Fri, 30 Mar 2018 23:24:03 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -476,55 +345,25 @@ interactions: headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server update] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003?api-version=2017-12-01 - response: - body: {string: '{"sku":{"name":"GP_Gen4_4","tier":"GeneralPurpose","family":"Gen4","capacity":4},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"9.6","sslEnforcement":"Disabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.postgres.database.azure.com","earliestRestoreDate":"2018-03-20T00:22:40.38+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"brazilsouth","tags":{"key":"2"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforPostgreSQL/servers"}'} - headers: - cache-control: [no-cache] - content-length: ['948'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:18:04 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: '{"sku": {"name": "gp_Gen4_2", "tier": "GeneralPurpose", "capacity": 2, - "family": "Gen4"}, "properties": {"storageProfile": {"backupRetentionDays": - 7, "geoRedundantBackup": "Disabled", "storageMB": 5120}}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server update] + CommandName: [postgres server delete] Connection: [keep-alive] - Content-Length: ['204'] + Content-Length: ['0'] Content-Type: [application/json; charset=utf-8] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] + msrest_azure/0.4.24 azure-mgmt-rdbms/2017-12-01 Azure-SDK-For-Python AZURECLI/2.0.31] accept-language: [en-US] - method: PATCH + method: DELETE uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003?api-version=2017-12-01 response: - body: {string: '{"operation":"UpsertElasticServer","startTime":"2018-03-20T00:18:06.543Z"}'} + body: {string: '{"operation":"DropElasticServer","startTime":"2018-03-30T23:24:04.897Z"}'} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/dc0dd18e-25f5-4949-b950-88f534f9c09c?api-version=2017-12-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/westus/azureAsyncOperation/95962025-2b41-4895-ae27-5965d67eb5ab?api-version=2017-12-01'] cache-control: [no-cache] - content-length: ['74'] + content-length: ['72'] content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:18:05 GMT'] + date: ['Fri, 30 Mar 2018 23:24:04 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/operationResults/dc0dd18e-25f5-4949-b950-88f534f9c09c?api-version=2017-12-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/westus/operationResults/95962025-2b41-4895-ae27-5965d67eb5ab?api-version=2017-12-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] @@ -536,71 +375,19 @@ interactions: headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server update] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/dc0dd18e-25f5-4949-b950-88f534f9c09c?api-version=2017-12-01 - response: - body: {string: '{"name":"dc0dd18e-25f5-4949-b950-88f534f9c09c","status":"InProgress","startTime":"2018-03-20T00:18:06.543Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:19:07 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server update] + CommandName: [postgres server delete] Connection: [keep-alive] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] + msrest_azure/0.4.24 azure-mgmt-rdbms/2017-12-01 Azure-SDK-For-Python AZURECLI/2.0.31] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/dc0dd18e-25f5-4949-b950-88f534f9c09c?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/westus/azureAsyncOperation/95962025-2b41-4895-ae27-5965d67eb5ab?api-version=2017-12-01 response: - body: {string: '{"name":"dc0dd18e-25f5-4949-b950-88f534f9c09c","status":"Succeeded","startTime":"2018-03-20T00:18:06.543Z"}'} + body: {string: '{"name":"95962025-2b41-4895-ae27-5965d67eb5ab","status":"Succeeded","startTime":"2018-03-30T23:24:04.897Z"}'} headers: cache-control: [no-cache] content-length: ['107'] content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:20:08 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server update] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003?api-version=2017-12-01 - response: - body: {string: '{"sku":{"name":"GP_Gen4_2","tier":"GeneralPurpose","family":"Gen4","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"9.6","sslEnforcement":"Disabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.postgres.database.azure.com","earliestRestoreDate":"2018-03-20T00:22:40.38+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"brazilsouth","tags":{"key":"2"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforPostgreSQL/servers"}'} - headers: - cache-control: [no-cache] - content-length: ['948'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:20:09 GMT'] + date: ['Fri, 30 Mar 2018 23:24:19 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -614,54 +401,25 @@ interactions: headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server update] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003?api-version=2017-12-01 - response: - body: {string: '{"sku":{"name":"GP_Gen4_2","tier":"GeneralPurpose","family":"Gen4","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"9.6","sslEnforcement":"Disabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.postgres.database.azure.com","earliestRestoreDate":"2018-03-20T00:22:40.38+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"brazilsouth","tags":{"key":"2"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforPostgreSQL/servers"}'} - headers: - cache-control: [no-cache] - content-length: ['948'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:20:11 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: '{"properties": {"storageProfile": {"backupRetentionDays": 7, "geoRedundantBackup": - "Disabled", "storageMB": 5120}, "sslEnforcement": "Enabled"}}' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server update] + CommandName: [postgres server delete] Connection: [keep-alive] - Content-Length: ['144'] + Content-Length: ['0'] Content-Type: [application/json; charset=utf-8] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] + msrest_azure/0.4.24 azure-mgmt-rdbms/2017-12-01 Azure-SDK-For-Python AZURECLI/2.0.31] accept-language: [en-US] - method: PATCH - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003?api-version=2017-12-01 + method: DELETE + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000002/providers/Microsoft.DBforPostgreSQL/servers/azuredbcligeorestore000005?api-version=2017-12-01 response: - body: {string: '{"operation":"UpsertElasticServer","startTime":"2018-03-20T00:20:14.637Z"}'} + body: {string: '{"operation":"DropElasticServer","startTime":"2018-03-30T23:24:22.89Z"}'} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/138ddde6-12e0-4e3a-85e9-bbac614b636c?api-version=2017-12-01'] + azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/koreasouth/azureAsyncOperation/c4abd6df-dc20-4305-b2ac-537970ab82cb?api-version=2017-12-01'] cache-control: [no-cache] - content-length: ['74'] + content-length: ['71'] content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:20:14 GMT'] + date: ['Fri, 30 Mar 2018 23:24:22 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/operationResults/138ddde6-12e0-4e3a-85e9-bbac614b636c?api-version=2017-12-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/koreasouth/operationResults/c4abd6df-dc20-4305-b2ac-537970ab82cb?api-version=2017-12-01'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] @@ -673,19 +431,19 @@ interactions: headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server update] + CommandName: [postgres server delete] Connection: [keep-alive] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] + msrest_azure/0.4.24 azure-mgmt-rdbms/2017-12-01 Azure-SDK-For-Python AZURECLI/2.0.31] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/138ddde6-12e0-4e3a-85e9-bbac614b636c?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/koreasouth/azureAsyncOperation/c4abd6df-dc20-4305-b2ac-537970ab82cb?api-version=2017-12-01 response: - body: {string: '{"name":"138ddde6-12e0-4e3a-85e9-bbac614b636c","status":"Succeeded","startTime":"2018-03-20T00:20:14.637Z"}'} + body: {string: '{"name":"c4abd6df-dc20-4305-b2ac-537970ab82cb","status":"Succeeded","startTime":"2018-03-30T23:24:22.89Z"}'} headers: cache-control: [no-cache] - content-length: ['107'] + content-length: ['106'] content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:21:15 GMT'] + date: ['Fri, 30 Mar 2018 23:24:39 GMT'] expires: ['-1'] pragma: [no-cache] server: [Microsoft-HTTPAPI/2.0] @@ -699,24 +457,24 @@ interactions: headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server update] + CommandName: [postgres server list] Connection: [keep-alive] + Content-Type: [application/json; charset=utf-8] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] + msrest_azure/0.4.24 azure-mgmt-rdbms/2017-12-01 Azure-SDK-For-Python AZURECLI/2.0.31] + accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers?api-version=2017-12-01 response: - body: {string: '{"sku":{"name":"GP_Gen4_2","tier":"GeneralPurpose","family":"Gen4","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"9.6","sslEnforcement":"Enabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.postgres.database.azure.com","earliestRestoreDate":"2018-03-20T00:22:40.38+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"brazilsouth","tags":{"key":"2"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforPostgreSQL/servers"}'} + body: {string: '{"value":[]}'} headers: cache-control: [no-cache] - content-length: ['947'] + content-length: ['12'] content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:21:16 GMT'] + date: ['Fri, 30 Mar 2018 23:24:40 GMT'] expires: ['-1'] pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] status: {code: 200, message: OK} @@ -725,863 +483,54 @@ interactions: headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server update] + CommandName: [postgres server list] Connection: [keep-alive] Content-Type: [application/json; charset=utf-8] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] + msrest_azure/0.4.24 azure-mgmt-rdbms/2017-12-01 Azure-SDK-For-Python AZURECLI/2.0.31] accept-language: [en-US] method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003?api-version=2017-12-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000002/providers/Microsoft.DBforPostgreSQL/servers?api-version=2017-12-01 response: - body: {string: '{"sku":{"name":"GP_Gen4_2","tier":"GeneralPurpose","family":"Gen4","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"9.6","sslEnforcement":"Enabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.postgres.database.azure.com","earliestRestoreDate":"2018-03-20T00:22:40.38+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"brazilsouth","tags":{"key":"2"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforPostgreSQL/servers"}'} + body: {string: '{"value":[]}'} headers: cache-control: [no-cache] - content-length: ['947'] + content-length: ['12'] content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:21:18 GMT'] + date: ['Fri, 30 Mar 2018 23:24:40 GMT'] expires: ['-1'] pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] vary: [Accept-Encoding] x-content-type-options: [nosniff] status: {code: 200, message: OK} - request: - body: '{"properties": {"storageProfile": {"backupRetentionDays": 7, "geoRedundantBackup": - "Disabled", "storageMB": 5120}}, "tags": {"key": "3"}}' + body: null headers: Accept: [application/json] Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server update] + CommandName: [group delete] Connection: [keep-alive] - Content-Length: ['137'] + Content-Length: ['0'] Content-Type: [application/json; charset=utf-8] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] + msrest_azure/0.4.24 resourcemanagementclient/1.2.1 Azure-SDK-For-Python + AZURECLI/2.0.31] accept-language: [en-US] - method: PATCH - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003?api-version=2017-12-01 + method: DELETE + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/clitest.rg000002?api-version=2017-05-10 response: - body: {string: '{"operation":"UpsertElasticServer","startTime":"2018-03-20T00:21:21.607Z"}'} + body: {string: ''} headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/1c9a6efb-0862-4f5a-9fb6-fe0c4d17a577?api-version=2017-12-01'] cache-control: [no-cache] - content-length: ['74'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:21:20 GMT'] + content-length: ['0'] + date: ['Fri, 30 Mar 2018 23:24:41 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/operationResults/1c9a6efb-0862-4f5a-9fb6-fe0c4d17a577?api-version=2017-12-01'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1DTElURVNUOjJFUkdYQktaTEZGMkdFUEVORUhRUlRQM0w3SlZZWURIVkpUTlFPVXxCODg4Qzc2QjEzNzU1RjY1LVdFU1RVUyIsImpvYkxvY2F0aW9uIjoid2VzdHVzIn0?api-version=2017-05-10'] pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server update] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/1c9a6efb-0862-4f5a-9fb6-fe0c4d17a577?api-version=2017-12-01 - response: - body: {string: '{"name":"1c9a6efb-0862-4f5a-9fb6-fe0c4d17a577","status":"Succeeded","startTime":"2018-03-20T00:21:21.607Z"}'} - headers: - cache-control: [no-cache] - content-length: ['107'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:22:22 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server update] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003?api-version=2017-12-01 - response: - body: {string: '{"sku":{"name":"GP_Gen4_2","tier":"GeneralPurpose","family":"Gen4","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"9.6","sslEnforcement":"Enabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.postgres.database.azure.com","earliestRestoreDate":"2018-03-20T00:22:40.38+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"brazilsouth","tags":{"key":"3"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforPostgreSQL/servers"}'} - headers: - cache-control: [no-cache] - content-length: ['947'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:22:23 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server restore] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003?api-version=2017-12-01 - response: - body: {string: '{"sku":{"name":"GP_Gen4_2","tier":"GeneralPurpose","family":"Gen4","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"9.6","sslEnforcement":"Enabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.postgres.database.azure.com","earliestRestoreDate":"2018-03-20T00:22:40.38+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"brazilsouth","tags":{"key":"3"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforPostgreSQL/servers"}'} - headers: - cache-control: [no-cache] - content-length: ['947'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:27:26 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: 'b''b\''{"properties": {"createMode": "PointInTimeRestore", "sourceServerId": - "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003", - "restorePointInTime": "2018-03-20T00:27:24.863413Z"}, "location": "brazilsouth"}\''''' - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server restore] - Connection: [keep-alive] - Content-Length: ['404'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000002/providers/Microsoft.DBforPostgreSQL/servers/azuredbclirestore000004?api-version=2017-12-01 - response: - body: {string: '{"operation":"RestoreElasticServer","startTime":"2018-03-20T00:27:27.487Z"}'} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/79734bd5-5e65-442d-8d8e-6c6a189884a4?api-version=2017-12-01'] - cache-control: [no-cache] - content-length: ['75'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:27:26 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/operationResults/79734bd5-5e65-442d-8d8e-6c6a189884a4?api-version=2017-12-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/79734bd5-5e65-442d-8d8e-6c6a189884a4?api-version=2017-12-01 - response: - body: {string: '{"name":"79734bd5-5e65-442d-8d8e-6c6a189884a4","status":"InProgress","startTime":"2018-03-20T00:27:27.487Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:27:37 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/79734bd5-5e65-442d-8d8e-6c6a189884a4?api-version=2017-12-01 - response: - body: {string: '{"name":"79734bd5-5e65-442d-8d8e-6c6a189884a4","status":"InProgress","startTime":"2018-03-20T00:27:27.487Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:27:49 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/79734bd5-5e65-442d-8d8e-6c6a189884a4?api-version=2017-12-01 - response: - body: {string: '{"name":"79734bd5-5e65-442d-8d8e-6c6a189884a4","status":"InProgress","startTime":"2018-03-20T00:27:27.487Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:28:01 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/79734bd5-5e65-442d-8d8e-6c6a189884a4?api-version=2017-12-01 - response: - body: {string: '{"name":"79734bd5-5e65-442d-8d8e-6c6a189884a4","status":"InProgress","startTime":"2018-03-20T00:27:27.487Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:28:12 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/79734bd5-5e65-442d-8d8e-6c6a189884a4?api-version=2017-12-01 - response: - body: {string: '{"name":"79734bd5-5e65-442d-8d8e-6c6a189884a4","status":"InProgress","startTime":"2018-03-20T00:27:27.487Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:28:23 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/79734bd5-5e65-442d-8d8e-6c6a189884a4?api-version=2017-12-01 - response: - body: {string: '{"name":"79734bd5-5e65-442d-8d8e-6c6a189884a4","status":"InProgress","startTime":"2018-03-20T00:27:27.487Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:28:34 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/79734bd5-5e65-442d-8d8e-6c6a189884a4?api-version=2017-12-01 - response: - body: {string: '{"name":"79734bd5-5e65-442d-8d8e-6c6a189884a4","status":"InProgress","startTime":"2018-03-20T00:27:27.487Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:28:46 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/79734bd5-5e65-442d-8d8e-6c6a189884a4?api-version=2017-12-01 - response: - body: {string: '{"name":"79734bd5-5e65-442d-8d8e-6c6a189884a4","status":"InProgress","startTime":"2018-03-20T00:27:27.487Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:28:57 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/79734bd5-5e65-442d-8d8e-6c6a189884a4?api-version=2017-12-01 - response: - body: {string: '{"name":"79734bd5-5e65-442d-8d8e-6c6a189884a4","status":"InProgress","startTime":"2018-03-20T00:27:27.487Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:29:09 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/79734bd5-5e65-442d-8d8e-6c6a189884a4?api-version=2017-12-01 - response: - body: {string: '{"name":"79734bd5-5e65-442d-8d8e-6c6a189884a4","status":"InProgress","startTime":"2018-03-20T00:27:27.487Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:29:19 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/79734bd5-5e65-442d-8d8e-6c6a189884a4?api-version=2017-12-01 - response: - body: {string: '{"name":"79734bd5-5e65-442d-8d8e-6c6a189884a4","status":"InProgress","startTime":"2018-03-20T00:27:27.487Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:29:31 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/79734bd5-5e65-442d-8d8e-6c6a189884a4?api-version=2017-12-01 - response: - body: {string: '{"name":"79734bd5-5e65-442d-8d8e-6c6a189884a4","status":"InProgress","startTime":"2018-03-20T00:27:27.487Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:29:42 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/79734bd5-5e65-442d-8d8e-6c6a189884a4?api-version=2017-12-01 - response: - body: {string: '{"name":"79734bd5-5e65-442d-8d8e-6c6a189884a4","status":"InProgress","startTime":"2018-03-20T00:27:27.487Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:29:53 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/79734bd5-5e65-442d-8d8e-6c6a189884a4?api-version=2017-12-01 - response: - body: {string: '{"name":"79734bd5-5e65-442d-8d8e-6c6a189884a4","status":"InProgress","startTime":"2018-03-20T00:27:27.487Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:30:04 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/79734bd5-5e65-442d-8d8e-6c6a189884a4?api-version=2017-12-01 - response: - body: {string: '{"name":"79734bd5-5e65-442d-8d8e-6c6a189884a4","status":"InProgress","startTime":"2018-03-20T00:27:27.487Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:30:16 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/79734bd5-5e65-442d-8d8e-6c6a189884a4?api-version=2017-12-01 - response: - body: {string: '{"name":"79734bd5-5e65-442d-8d8e-6c6a189884a4","status":"InProgress","startTime":"2018-03-20T00:27:27.487Z"}'} - headers: - cache-control: [no-cache] - content-length: ['108'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:30:27 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/79734bd5-5e65-442d-8d8e-6c6a189884a4?api-version=2017-12-01 - response: - body: {string: '{"name":"79734bd5-5e65-442d-8d8e-6c6a189884a4","status":"Succeeded","startTime":"2018-03-20T00:27:27.487Z"}'} - headers: - cache-control: [no-cache] - content-length: ['107'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:30:39 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server restore] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000002/providers/Microsoft.DBforPostgreSQL/servers/azuredbclirestore000004?api-version=2017-12-01 - response: - body: {string: '{"sku":{"name":"GP_Gen4_2","tier":"GeneralPurpose","family":"Gen4","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"9.6","sslEnforcement":"Enabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclirestore000004.postgres.database.azure.com","earliestRestoreDate":"2018-03-20T00:37:27.737+00:00","replicationRole":"None","primaryServerId":"","replicaCapacity":5},"location":"brazilsouth","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000002/providers/Microsoft.DBforPostgreSQL/servers/azuredbclirestore000004","name":"azuredbclirestore000004","type":"Microsoft.DBforPostgreSQL/servers"}'} - headers: - cache-control: [no-cache] - content-length: ['929'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:30:40 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server list] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000002/providers/Microsoft.DBforPostgreSQL/servers?api-version=2017-12-01 - response: - body: {string: '{"value":[{"sku":{"name":"GP_Gen4_2","tier":"GeneralPurpose","family":"Gen4","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"9.6","sslEnforcement":"Enabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclirestore000004.postgres.database.azure.com","earliestRestoreDate":"2018-03-20T00:37:27.737+00:00","replicationRole":"","primaryServerId":""},"location":"brazilsouth","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000002/providers/Microsoft.DBforPostgreSQL/servers/azuredbclirestore000004","name":"azuredbclirestore000004","type":"Microsoft.DBforPostgreSQL/servers"}]}'} - headers: - cache-control: [no-cache] - content-length: ['917'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:30:41 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server list] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/servers?api-version=2017-12-01 - response: - body: {string: '{"value":[{"sku":{"name":"GP_Gen4_2","tier":"GeneralPurpose","family":"Gen4","capacity":2},"properties":{"administratorLogin":"rohit","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"9.6","sslEnforcement":"Enabled","userVisibleState":"Ready","fullyQualifiedDomainName":"rohit2dbcreate.postgres.database.azure.com","earliestRestoreDate":"2018-03-13T00:30:43.7390958+00:00","replicationRole":"","primaryServerId":""},"location":"brazilsouth","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/OrcasGATesting/providers/Microsoft.DBforPostgreSQL/servers/rohit2dbcreate","name":"rohit2dbcreate","type":"Microsoft.DBforPostgreSQL/servers"},{"sku":{"name":"GP_Gen4_2","tier":"GeneralPurpose","family":"Gen4","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"9.6","sslEnforcement":"Enabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclitest000003.postgres.database.azure.com","earliestRestoreDate":"2018-03-20T00:22:40.38+00:00","replicationRole":"","primaryServerId":""},"location":"brazilsouth","tags":{"key":"3"},"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003","name":"azuredbclitest000003","type":"Microsoft.DBforPostgreSQL/servers"},{"sku":{"name":"GP_Gen4_2","tier":"GeneralPurpose","family":"Gen4","capacity":2},"properties":{"administratorLogin":"cloudsa","storageProfile":{"storageMB":5120,"backupRetentionDays":7,"geoRedundantBackup":"Disabled"},"version":"9.6","sslEnforcement":"Enabled","userVisibleState":"Ready","fullyQualifiedDomainName":"azuredbclirestore000004.postgres.database.azure.com","earliestRestoreDate":"2018-03-20T00:37:27.737+00:00","replicationRole":"","primaryServerId":""},"location":"brazilsouth","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000002/providers/Microsoft.DBforPostgreSQL/servers/azuredbclirestore000004","name":"azuredbclirestore000004","type":"Microsoft.DBforPostgreSQL/servers"}]}'} - headers: - cache-control: [no-cache] - content-length: ['2541'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:30:43 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server delete] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers/azuredbclitest000003?api-version=2017-12-01 - response: - body: {string: '{"operation":"DropElasticServer","startTime":"2018-03-20T00:30:45.52Z"}'} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/0d3dae06-55f3-4ebd-b99c-128529f9e103?api-version=2017-12-01'] - cache-control: [no-cache] - content-length: ['71'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:30:45 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/operationResults/0d3dae06-55f3-4ebd-b99c-128529f9e103?api-version=2017-12-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server delete] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/0d3dae06-55f3-4ebd-b99c-128529f9e103?api-version=2017-12-01 - response: - body: {string: '{"name":"0d3dae06-55f3-4ebd-b99c-128529f9e103","status":"Succeeded","startTime":"2018-03-20T00:30:45.52Z"}'} - headers: - cache-control: [no-cache] - content-length: ['106'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:31:01 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server delete] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000002/providers/Microsoft.DBforPostgreSQL/servers/azuredbclirestore000004?api-version=2017-12-01 - response: - body: {string: '{"operation":"DropElasticServer","startTime":"2018-03-20T00:31:03.997Z"}'} - headers: - azure-asyncoperation: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/a5df147a-2ded-4a94-b9bf-910c170a6b4e?api-version=2017-12-01'] - cache-control: [no-cache] - content-length: ['72'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:31:03 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/operationResults/a5df147a-2ded-4a94-b9bf-910c170a6b4e?api-version=2017-12-01'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] - status: {code: 202, message: Accepted} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server delete] - Connection: [keep-alive] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.DBforPostgreSQL/locations/brazilsouth/azureAsyncOperation/a5df147a-2ded-4a94-b9bf-910c170a6b4e?api-version=2017-12-01 - response: - body: {string: '{"name":"a5df147a-2ded-4a94-b9bf-910c170a6b4e","status":"Succeeded","startTime":"2018-03-20T00:31:03.997Z"}'} - headers: - cache-control: [no-cache] - content-length: ['107'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:31:19 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [postgres server list] - Connection: [keep-alive] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 azure-mgmt-rdbms/0.1.0 Azure-SDK-For-Python AZURECLI/2.0.30] - accept-language: [en-US] - method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rg000001/providers/Microsoft.DBforPostgreSQL/servers?api-version=2017-12-01 - response: - body: {string: '{"value":[]}'} - headers: - cache-control: [no-cache] - content-length: ['12'] - content-type: [application/json; charset=utf-8] - date: ['Tue, 20 Mar 2018 00:31:22 GMT'] - expires: ['-1'] - pragma: [no-cache] - server: [Microsoft-HTTPAPI/2.0] - strict-transport-security: [max-age=31536000; includeSubDomains] - transfer-encoding: [chunked] - vary: [Accept-Encoding] - x-content-type-options: [nosniff] - status: {code: 200, message: OK} -- request: - body: null - headers: - Accept: [application/json] - Accept-Encoding: ['gzip, deflate'] - CommandName: [group delete] - Connection: [keep-alive] - Content-Length: ['0'] - Content-Type: [application/json; charset=utf-8] - User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 resourcemanagementclient/1.2.1 Azure-SDK-For-Python - AZURECLI/2.0.30] - accept-language: [en-US] - method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/clitest.rg000002?api-version=2017-05-10 - response: - body: {string: ''} - headers: - cache-control: [no-cache] - content-length: ['0'] - date: ['Tue, 20 Mar 2018 00:31:22 GMT'] - expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1DTElURVNUOjJFUkczU0NaTVcyTlBCQVlMUDVUWkhJT0xUNllPNFJQQlJWWUFTTnxFODMyQURDMDhFMDE1NDE4LVdFU1RVUyIsImpvYkxvY2F0aW9uIjoid2VzdHVzIn0?api-version=2017-05-10'] - pragma: [no-cache] - strict-transport-security: [max-age=31536000; includeSubDomains] - x-content-type-options: [nosniff] - x-ms-ratelimit-remaining-subscription-writes: ['1199'] + x-ms-ratelimit-remaining-subscription-writes: ['1198'] status: {code: 202, message: Accepted} - request: body: null @@ -1593,8 +542,8 @@ interactions: Content-Length: ['0'] Content-Type: [application/json; charset=utf-8] User-Agent: [python/3.6.3 (Windows-10-10.0.16299-SP0) requests/2.18.4 msrest/0.4.27 - msrest_azure/0.4.22 resourcemanagementclient/1.2.1 Azure-SDK-For-Python - AZURECLI/2.0.30] + msrest_azure/0.4.24 resourcemanagementclient/1.2.1 Azure-SDK-For-Python + AZURECLI/2.0.31] accept-language: [en-US] method: DELETE uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/clitest.rg000001?api-version=2017-05-10 @@ -1603,9 +552,9 @@ interactions: headers: cache-control: [no-cache] content-length: ['0'] - date: ['Tue, 20 Mar 2018 00:31:23 GMT'] + date: ['Fri, 30 Mar 2018 23:24:44 GMT'] expires: ['-1'] - location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1DTElURVNUOjJFUkdGUEQ0RzRWVkYyRlhJVU1PTjdOUTVRQVFRN1BLNEtQQUpZNXxDOUI5Njk4Rjc2MjJFNjkwLVdFU1RVUyIsImpvYkxvY2F0aW9uIjoid2VzdHVzIn0?api-version=2017-05-10'] + location: ['https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1DTElURVNUOjJFUkdIUFVPNTRBM0JLVk9RQ1JTRkhOQU43QTJQMjU3NDc1MlY1SnxFODNGOTJBQjhCMjRCRTlBLVdFU1RVUyIsImpvYkxvY2F0aW9uIjoid2VzdHVzIn0?api-version=2017-05-10'] pragma: [no-cache] strict-transport-security: [max-age=31536000; includeSubDomains] x-content-type-options: [nosniff] diff --git a/src/rdbms/azext_rdbms/tests/test_rdbms_commands.py b/src/rdbms/azext_rdbms/tests/test_rdbms_commands.py index 1d9057b7f08..60f0c41f92f 100644 --- a/src/rdbms/azext_rdbms/tests/test_rdbms_commands.py +++ b/src/rdbms/azext_rdbms/tests/test_rdbms_commands.py @@ -3,9 +3,7 @@ # Licensed under the MIT License. See License.txt in the project root for license information. # -------------------------------------------------------------------------------------------- -from datetime import datetime -from dateutil.tz import tzutc # pylint: disable=import-error - +from azure.cli.core.util import CLIError from azure.cli.testsdk.base import execute from azure.cli.testsdk.exceptions import CliTestError # pylint: disable=unused-import from azure.cli.testsdk import ( @@ -26,10 +24,10 @@ class ServerPreparer(AbstractPreparer, SingleValueReplacer): # pylint: disable=too-many-instance-attributes def __init__(self, engine_type='mysql', engine_parameter_name='database_engine', - name_prefix=SERVER_NAME_PREFIX, parameter_name='server', location='brazilsouth', + name_prefix=SERVER_NAME_PREFIX, parameter_name='server', location='westus', admin_user='cloudsa', admin_password='SecretPassword123', resource_group_parameter_name='resource_group', skip_delete=True, - sku_name='GP_Gen4_2'): + sku_name='GP_Gen5_2'): super(ServerPreparer, self).__init__(name_prefix, SERVER_NAME_MAX_LENGTH) from azure.cli.testsdk import TestCli self.cli_ctx = TestCli() @@ -78,297 +76,85 @@ def test_postgres_server_mgmt(self, resource_group_1, resource_group_2): def _test_server_mgmt(self, database_engine, resource_group_1, resource_group_2): servers = [self.create_random_name(SERVER_NAME_PREFIX, SERVER_NAME_MAX_LENGTH), - self.create_random_name('azuredbclirestore', SERVER_NAME_MAX_LENGTH)] + self.create_random_name('azuredbclirestore', SERVER_NAME_MAX_LENGTH), + self.create_random_name('azuredbcligeorestore', SERVER_NAME_MAX_LENGTH)] admin_login = 'cloudsa' admin_passwords = ['SecretPassword123', 'SecretPassword456'] edition = 'GeneralPurpose' + backupRetention = 10 + geoRedundantBackup = 'Enabled' old_cu = 2 - new_cu = 4 - family = 'Gen4' + family = 'Gen5' skuname = '{}_{}_{}'.format("GP", family, old_cu) + loc = 'westus' - rg = resource_group_1 - loc = 'brazilsouth' + geoGeoRedundantBackup = 'Disabled' + geoBackupRetention = 20 + geoloc = 'koreasouth' # test create server self.cmd('{} server create -g {} --name {} -l {} ' '--admin-user {} --admin-password {} ' - '--sku-name {} --tags key=1' - .format(database_engine, rg, servers[0], loc, - admin_login, admin_passwords[0], skuname), + '--sku-name {} --tags key=1 --geo-redundant-backup {} ' + '--backup-retention {}' + .format(database_engine, resource_group_1, servers[0], loc, + admin_login, admin_passwords[0], skuname, + geoRedundantBackup, backupRetention), checks=[ JMESPathCheck('name', servers[0]), - JMESPathCheck('resourceGroup', rg), + JMESPathCheck('resourceGroup', resource_group_1), JMESPathCheck('administratorLogin', admin_login), JMESPathCheck('sslEnforcement', 'Enabled'), JMESPathCheck('tags.key', '1'), JMESPathCheck('sku.capacity', old_cu), - JMESPathCheck('sku.tier', edition)]) + JMESPathCheck('sku.tier', edition), + JMESPathCheck('storageProfile.backupRetentionDays', backupRetention), + JMESPathCheck('storageProfile.geoRedundantBackup', geoRedundantBackup)]) # test show server result = self.cmd('{} server show -g {} --name {}' - .format(database_engine, rg, servers[0]), + .format(database_engine, resource_group_1, servers[0]), checks=[ JMESPathCheck('name', servers[0]), + JMESPathCheck('resourceGroup', resource_group_1), JMESPathCheck('administratorLogin', admin_login), + JMESPathCheck('sslEnforcement', 'Enabled'), + JMESPathCheck('tags.key', '1'), JMESPathCheck('sku.capacity', old_cu), - JMESPathCheck('resourceGroup', rg)]).get_output_in_json() - - # test update server - self.cmd('{} server update -g {} --name {} --admin-password {} ' - '--ssl-enforcement Disabled --tags key=2' - .format(database_engine, rg, servers[0], admin_passwords[1]), - checks=[ - JMESPathCheck('name', servers[0]), - JMESPathCheck('resourceGroup', rg), - JMESPathCheck('sslEnforcement', 'Disabled'), - JMESPathCheck('sku.tier', edition), - JMESPathCheck('tags.key', '2'), - JMESPathCheck('administratorLogin', admin_login)]) - - self.cmd('{} server update -g {} --name {} --vcore {}' - .format(database_engine, rg, servers[0], new_cu), - checks=[ - JMESPathCheck('name', servers[0]), - JMESPathCheck('resourceGroup', rg), - JMESPathCheck('sku.tier', edition), - JMESPathCheck('sku.capacity', new_cu), - JMESPathCheck('administratorLogin', admin_login)]) - - # test show server - self.cmd('{} server show -g {} --name {}' - .format(database_engine, rg, servers[0]), - checks=[ - JMESPathCheck('name', servers[0]), - JMESPathCheck('resourceGroup', rg), - JMESPathCheck('sslEnforcement', 'Disabled'), - JMESPathCheck('sku.tier', edition), - JMESPathCheck('sku.capacity', new_cu), - JMESPathCheck('tags.key', '2'), - JMESPathCheck('administratorLogin', admin_login)]) - - # test update server per property - self.cmd('{} server update -g {} --name {} --vcore {}' - .format(database_engine, rg, servers[0], old_cu), - checks=[ - JMESPathCheck('name', servers[0]), - JMESPathCheck('resourceGroup', rg), - JMESPathCheck('sku.tier', edition), - JMESPathCheck('sku.capacity', old_cu), - JMESPathCheck('administratorLogin', admin_login)]) - - self.cmd('{} server update -g {} --name {} --ssl-enforcement Enabled' - .format(database_engine, rg, servers[0]), - checks=[ - JMESPathCheck('name', servers[0]), - JMESPathCheck('resourceGroup', rg), - JMESPathCheck('sslEnforcement', 'Enabled'), - JMESPathCheck('sku.tier', edition), - JMESPathCheck('administratorLogin', admin_login)]) - - self.cmd('{} server update -g {} --name {} --tags key=3' - .format(database_engine, rg, servers[0]), - checks=[ - JMESPathCheck('name', servers[0]), - JMESPathCheck('resourceGroup', rg), - JMESPathCheck('sslEnforcement', 'Enabled'), - JMESPathCheck('tags.key', '3'), - JMESPathCheck('sku.tier', edition), - JMESPathCheck('administratorLogin', admin_login)]) - - # test restore to a new server, make sure wait at least 5 min after server created. - from time import sleep - sleep(300) - - self.cmd('{} server restore -g {} --name {} ' - '--source-server {} ' - '--restore-point-in-time {}' - .format(database_engine, resource_group_2, servers[1], result['id'], - datetime.utcnow().replace(tzinfo=tzutc()).isoformat()), - checks=[ - JMESPathCheck('name', servers[1]), - JMESPathCheck('resourceGroup', resource_group_2), - JMESPathCheck('sku.tier', edition), - JMESPathCheck('administratorLogin', admin_login)]) + JMESPathCheck('sku.tier', edition), + JMESPathCheck('storageProfile.backupRetentionDays', backupRetention), + JMESPathCheck('storageProfile.geoRedundantBackup', geoRedundantBackup)]).get_output_in_json() # pylint: disable=line-too-long + + # test georestore server + with self.assertRaises(CLIError) as exception: + self.cmd('{} server georestore -g {} --name {} --source-server {} -l {} ' + '--geo-redundant-backup {} --backup-retention {}' + .format(database_engine, resource_group_2, servers[2], result['id'], + geoloc, geoGeoRedundantBackup, geoBackupRetention), + checks=[ + JMESPathCheck('name', servers[2]), + JMESPathCheck('resourceGroup', resource_group_2), + JMESPathCheck('sku.tier', edition), + JMESPathCheck('administratorLogin', admin_login), + JMESPathCheck('location', geoloc), + JMESPathCheck('storageProfile.backupRetentionDays', geoBackupRetention), + JMESPathCheck('storageProfile.geoRedundantBackup', geoGeoRedundantBackup)]) + self.assertTrue(' does not have the server ' in '{}'.format(exception.exception)) # test list servers - self.cmd('{} server list -g {}'.format(database_engine, resource_group_2), + self.cmd('{} server list -g {}'.format(database_engine, resource_group_1), checks=[JMESPathCheck('type(@)', 'array')]) - # test list servers without resource group - self.cmd('{} server list'.format(database_engine), + self.cmd('{} server list -g {}'.format(database_engine, resource_group_2), checks=[JMESPathCheck('type(@)', 'array')]) # test delete server self.cmd('{} server delete -g {} --name {} --yes' - .format(database_engine, rg, servers[0]), checks=NoneCheck()) - self.cmd('{} server delete -g {} -n {} --yes' - .format(database_engine, resource_group_2, servers[1]), checks=NoneCheck()) + .format(database_engine, resource_group_1, servers[0]), checks=NoneCheck()) - # test list server should be 0 - self.cmd('{} server list -g {}'.format(database_engine, rg), checks=[NoneCheck()]) - - -class ProxyResourcesMgmtScenarioTest(ScenarioTest): - - @ResourceGroupPreparer() - @ServerPreparer(engine_type='mysql') - def test_mysql_proxy_resources_mgmt(self, resource_group, server, database_engine): - self._test_firewall_mgmt(resource_group, server, database_engine) - self._test_db_mgmt(resource_group, server, database_engine) - self._test_configuration_mgmt(resource_group, server, database_engine) - self._test_log_file_mgmt(resource_group, server, database_engine) - - @ResourceGroupPreparer() - @ServerPreparer(engine_type='postgres') - def test_postgres_proxy_resources_mgmt(self, resource_group, server, database_engine): - self._test_firewall_mgmt(resource_group, server, database_engine) - self._test_db_mgmt(resource_group, server, database_engine) - self._test_configuration_mgmt(resource_group, server, database_engine) - self._test_log_file_mgmt(resource_group, server, database_engine) - - def _test_firewall_mgmt(self, resource_group, server, database_engine): - firewall_rule_1 = 'rule1' - start_ip_address_1 = '0.0.0.0' - end_ip_address_1 = '255.255.255.255' - firewall_rule_2 = 'rule2' - start_ip_address_2 = '123.123.123.123' - end_ip_address_2 = '123.123.123.124' - - # test firewall-rule create - self.cmd('{} server firewall-rule create -n {} -g {} -s {} ' - '--start-ip-address {} --end-ip-address {}' - .format(database_engine, firewall_rule_1, resource_group, server, - start_ip_address_1, end_ip_address_1), - checks=[ - JMESPathCheck('name', firewall_rule_1), - JMESPathCheck('resourceGroup', resource_group), - JMESPathCheck('startIpAddress', start_ip_address_1), - JMESPathCheck('endIpAddress', end_ip_address_1)]) - - # test firewall-rule show - self.cmd('{} server firewall-rule show --name {} -g {} --server {}' - .format(database_engine, firewall_rule_1, resource_group, server), - checks=[ - JMESPathCheck('name', firewall_rule_1), - JMESPathCheck('resourceGroup', resource_group), - JMESPathCheck('startIpAddress', start_ip_address_1), - JMESPathCheck('endIpAddress', end_ip_address_1)]) - - # test firewall-rule update - self.cmd('{} server firewall-rule update -n {} -g {} -s {} ' - '--start-ip-address {} --end-ip-address {}' - .format(database_engine, firewall_rule_1, resource_group, server, - start_ip_address_2, end_ip_address_2), - checks=[ - JMESPathCheck('name', firewall_rule_1), - JMESPathCheck('resourceGroup', resource_group), - JMESPathCheck('startIpAddress', start_ip_address_2), - JMESPathCheck('endIpAddress', end_ip_address_2)]) - - self.cmd('{} server firewall-rule update --name {} -g {} --server {} ' - '--start-ip-address {}' - .format(database_engine, firewall_rule_1, resource_group, server, - start_ip_address_1), - checks=[ - JMESPathCheck('name', firewall_rule_1), - JMESPathCheck('resourceGroup', resource_group), - JMESPathCheck('startIpAddress', start_ip_address_1), - JMESPathCheck('endIpAddress', end_ip_address_2)]) - - self.cmd('{} server firewall-rule update -n {} -g {} -s {} ' - '--end-ip-address {}' - .format(database_engine, firewall_rule_1, resource_group, server, - end_ip_address_1), - checks=[ - JMESPathCheck('name', firewall_rule_1), - JMESPathCheck('resourceGroup', resource_group), - JMESPathCheck('startIpAddress', start_ip_address_1), - JMESPathCheck('endIpAddress', end_ip_address_1)]) - - # test firewall-rule create another rule - self.cmd('{} server firewall-rule create --name {} -g {} --server {} ' - '--start-ip-address {} --end-ip-address {}' - .format(database_engine, firewall_rule_2, resource_group, server, - start_ip_address_2, end_ip_address_2), - checks=[ - JMESPathCheck('name', firewall_rule_2), - JMESPathCheck('resourceGroup', resource_group), - JMESPathCheck('startIpAddress', start_ip_address_2), - JMESPathCheck('endIpAddress', end_ip_address_2)]) - - # test firewall-rule list - self.cmd('{} server firewall-rule list -g {} -s {}' - .format(database_engine, resource_group, server), checks=[JMESPathCheck('length(@)', 2)]) - - self.cmd('{} server firewall-rule delete --name {} -g {} --server {} --yes' - .format(database_engine, firewall_rule_1, resource_group, server), checks=NoneCheck()) - self.cmd('{} server firewall-rule list -g {} --server {}' - .format(database_engine, resource_group, server), checks=[JMESPathCheck('length(@)', 1)]) - self.cmd('{} server firewall-rule delete -n {} -g {} -s {} --yes' - .format(database_engine, firewall_rule_2, resource_group, server), checks=NoneCheck()) - self.cmd('{} server firewall-rule list -g {} --server {}' - .format(database_engine, resource_group, server), checks=[NoneCheck()]) - - def _test_db_mgmt(self, resource_group, server, database_engine): - self.cmd('{} db list -g {} -s {}'.format(database_engine, resource_group, server), - checks=JMESPathCheck('type(@)', 'array')) - - def _test_configuration_mgmt(self, resource_group, server, database_engine): - if database_engine == 'mysql': - config_name = 'log_slow_admin_statements' - default_value = 'OFF' - new_value = 'ON' - else: - config_name = 'array_nulls' - default_value = 'on' - new_value = 'off' - - # test show configuration - self.cmd('{} server configuration show --name {} -g {} --server {}' - .format(database_engine, config_name, resource_group, server), - checks=[ - JMESPathCheck('name', config_name), - JMESPathCheck('value', default_value), - JMESPathCheck('source', 'system-default')]) - - # test update configuration - self.cmd('{} server configuration set -n {} -g {} -s {} --value {}' - .format(database_engine, config_name, resource_group, server, new_value), - checks=[ - JMESPathCheck('name', config_name), - JMESPathCheck('value', new_value), - JMESPathCheck('source', 'user-override')]) - - self.cmd('{} server configuration set -n {} -g {} -s {}' - .format(database_engine, config_name, resource_group, server), - checks=[ - JMESPathCheck('name', config_name), - JMESPathCheck('value', default_value)]) - - # test list configurations - self.cmd('{} server configuration list -g {} -s {}' - .format(database_engine, resource_group, server), - checks=[JMESPathCheck('type(@)', 'array')]) - - def _test_log_file_mgmt(self, resource_group, server, database_engine): - if database_engine == 'mysql': - config_name = 'slow_query_log' - new_value = 'ON' - - # test update configuration - self.cmd('{} server configuration set -n {} -g {} -s {} --value {}' - .format(database_engine, config_name, resource_group, server, new_value), - checks=[ - JMESPathCheck('name', config_name), - JMESPathCheck('value', new_value)]) - - # test list log files - # ensure recording good for at least 5 years! - result = self.cmd('{} server-logs list -g {} -s {} --file-last-written 43800' - .format(database_engine, resource_group, server), - checks=[ - JMESPathCheck('length(@)', 1), - JMESPathCheck('type(@)', 'array')]).get_output_in_json() + self.cmd('{} server delete -g {} --name {} --yes' + .format(database_engine, resource_group_2, servers[2]), checks=NoneCheck()) - self.assertIsNotNone(result[0]['name']) + # test list server should be 0 + self.cmd('{} server list -g {}'.format(database_engine, resource_group_1), checks=[NoneCheck()]) + self.cmd('{} server list -g {}'.format(database_engine, resource_group_2), checks=[NoneCheck()]) diff --git a/src/rdbms/azext_rdbms/validators.py b/src/rdbms/azext_rdbms/validators.py index 8984ead62c4..581891d11bb 100644 --- a/src/rdbms/azext_rdbms/validators.py +++ b/src/rdbms/azext_rdbms/validators.py @@ -15,7 +15,6 @@ def _final_validator_impl(cmd, namespace): # do additional creation validation verb = cmd.name.rsplit(' ', 1)[1] if verb == 'create': - storage_validator(namespace) password_validator(namespace) get_default_location_from_resource_group(cmd, namespace) @@ -40,8 +39,3 @@ def password_validator(ns): ns.administrator_login_password = prompt_pass(msg='Admin Password: ') except NoTTYException: raise CLIError('Please specify password in non-interactive mode.') - - -def storage_validator(ns): - if ns.storage_mb and ns.storage_mb > 1023 * 1024: - raise ValueError('The size of storage cannot exceed 1023GB.') diff --git a/src/rdbms/setup.py b/src/rdbms/setup.py index 1f155bedad0..7516026bbbd 100644 --- a/src/rdbms/setup.py +++ b/src/rdbms/setup.py @@ -8,7 +8,7 @@ from codecs import open from setuptools import setup, find_packages -VERSION = "0.0.4" +VERSION = "0.0.5" CLASSIFIERS = [ 'Development Status :: 4 - Beta', @@ -29,8 +29,8 @@ setup( name='rdbms', version=VERSION, - description='An Azure CLI Extension to manage Azure MySQL and Azure PostgreSQL resources', - long_description='An Azure CLI Extension to manage Azure MySQL and Azure PostgreSQL resources', + description='An Azure CLI Extension providing support for Azure MySQL and Azure PostgreSQL.', + long_description='An Azure CLI Extension providing support for Azure MySQL and Azure PostgreSQL.', license='MIT', author='Rohit Joy', author_email='rohitjoy@microsoft.com',