This commit is contained in:
Yugang Wang 2017-05-03 10:32:22 -07:00 коммит произвёл GitHub
Родитель 2a22c6f099
Коммит eb1b2192bc
13 изменённых файлов: 3434 добавлений и 502 удалений

Просмотреть файл

@ -150,6 +150,9 @@
<Compile Include="command_modules\azure-cli-appservice\azure\cli\command_modules\appservice\_client_factory.py" />
<Compile Include="command_modules\azure-cli-appservice\azure\cli\command_modules\appservice\_help.py" />
<Compile Include="command_modules\azure-cli-appservice\azure\cli\command_modules\appservice\_params.py" />
<Compile Include="command_modules\azure-cli-appservice\azure\cli\command_modules\appservice\_validators.py">
<SubType>Code</SubType>
</Compile>
<Compile Include="command_modules\azure-cli-appservice\azure\cli\command_modules\appservice\__init__.py" />
<Compile Include="command_modules\azure-cli-appservice\azure_bdist_wheel.py" />
<Compile Include="command_modules\azure-cli-appservice\setup.py" />

Просмотреть файл

@ -4,7 +4,7 @@ Release History
===============
0.1.5 (unreleased)
++++++++++++++++++++
* functionapp: add full functionapp supports, including create, show, list, delete, hostname, ssl, etc
* Adding Team Services (vsts) as a continuous delivery option to "appservice web source-control config"
* Create "az webapp" to replace "az appservice web" (for backward compat, "az appservice web" will stay for 2 releases)
* Expose arguments to configure deployment and "runtime stacks" on webapp create
@ -20,7 +20,6 @@ Release History
0.1.3 (2017-04-17)
++++++++++++++++++++
* Use the app service plan's resource group for cert operations (#2750)
0.1.2 (2017-04-03)

Просмотреть файл

@ -427,3 +427,191 @@ helps['webapp stop'] = """
type: command
short-summary: Stop a web app.
"""
helps['functionapp'] = """
type: group
short-summary: Manage your function app.
"""
helps['functionapp create'] = """
type: command
short-summary: Create a function app.
examples:
- name: Create a basic function app. Name must be unique to yield a unique FQDN;
for example, MyUniqueApp.azurewebsites.net.
text: >
az functionapp create
-g MyResourceGroup
-p MyPlan
-n MyUniqueApp
-s MyStorageAccount
"""
helps['functionapp delete'] = """
type: command
short-summary: Delete a function app.
"""
helps['functionapp list'] = """
type: command
short-summary: List function apps.
examples:
- name: List default host name and state for all function apps.
text: >
az functionapp list --query "[].{ hostName: defaultHostName, state: state }"
- name: List all running function apps.
text: >
az functionapp list --query "[?state=='Running']"
"""
helps['functionapp restart'] = """
type: command
short-summary: Restart a function app.
"""
helps['functionapp start'] = """
type: command
short-summary: Start a function app.
"""
helps['functionapp show'] = """
type: command
short-summary: Show a function app.
"""
helps['functionapp stop'] = """
type: command
short-summary: Stop a function app.
"""
helps['functionapp config'] = """
type: group
short-summary: Configure a function app.
"""
helps['functionapp config appsettings'] = """
type: group
short-summary: Configure function app settings.
"""
helps['functionapp config appsettings show'] = """
type: command
short-summary: Show function app settings.
"""
helps['functionapp config appsettings set'] = """
type: command
short-summary: Create or update function app settings.
"""
helps['functionapp config hostname'] = """
type: group
short-summary: Configure hostnames.
"""
helps['functionapp config hostname add'] = """
type: command
short-summary: Bind a hostname (custom domain) to a function app.
"""
helps['functionapp config hostname delete'] = """
type: command
short-summary: Unbind a hostname (custom domain) from a function app.
"""
helps['functionapp config hostname list'] = """
type: command
short-summary: List all hostname bindings.
"""
helps['functionapp config hostname get-external-ip'] = """
type: command
short-summary: get the ip address to configure your DNS settings for A records
"""
helps['functionapp config ssl'] = """
type: group
short-summary: Configure SSL certificates.
"""
helps['functionapp config ssl list'] = """
type: command
short-summary: List SSL certificates within a resource group
"""
helps['functionapp config ssl bind'] = """
type: command
short-summary: Bind an SSL certificate to a function app.
"""
helps['functionapp config ssl unbind'] = """
type: command
short-summary: Unbind an SSL certificate from a function app.
"""
helps['functionapp config ssl delete'] = """
type: command
short-summary: Delete an SSL certificate from a function app.
"""
helps['functionapp config ssl upload'] = """
type: command
short-summary: Upload an SSL certificate to a function app.
"""
helps['functionapp deployment'] = """
type: group
short-summary: Manage function app deployments.
"""
helps['functionapp deployment source'] = """
type: group
short-summary: Manage source control systems.
"""
helps['functionapp deployment source config'] = """
type: command
short-summary: Associate to Git or Mercurial repositories.
"""
helps['functionapp deployment source config-local-git'] = """
type: command
short-summary: Enable local git.
long-summary: Get an endpoint to clone and later push to the function app.
examples:
- name: Get a git endpoint for a web app and add it as a remote.
text: >
az functionapp source-control config-local-git \\
-g MyResourceGroup -n MyUniqueApp
git remote add azure \\
https://<deploy_user_name>@MyUniqueApp.scm.azurewebsites.net/MyUniqueApp.git
"""
helps['functionapp deployment source delete'] = """
type: command
short-summary: Delete source control configurations.
"""
helps['functionapp deployment source show'] = """
type: command
short-summary: Show source control configurations.
"""
helps['functionapp deployment source sync'] = """
type: command
short-summary: Synchronize from the source repository, only needed under manual integration mode.
"""
helps['functionapp deployment user'] = """
type: group
short-summary: Manage user credentials for a deployment.
"""
helps['functionapp deployment user set'] = """
type: command
short-summary: Update deployment credentials.
long-summary: All function/web apps in the subscription will be impacted since all apps share
the same deployment credentials.
examples:
- name: Set FTP and git deployment credentials for all function/web apps.
text: >
az functionapp deployment user set
--user-name MyUserName
"""

Просмотреть файл

@ -11,6 +11,7 @@ from azure.cli.core.commands.parameters import (resource_group_name_type, locati
CliArgumentType, ignore_type, enum_choice_list)
from azure.mgmt.web.models import DatabaseType, ConnectionStringType
from ._client_factory import web_client_factory
from ._validators import validate_existing_function_app, validate_existing_web_app
def _generic_site_operation(resource_group_name, name, operation_name, slot=None, # pylint: disable=too-many-arguments
@ -41,7 +42,16 @@ def get_hostname_completion_list(prefix, action, parsed_args, **kwargs): # pyli
name_arg_type = CliArgumentType(options_list=('--name', '-n'), metavar='NAME')
sku_arg_type = CliArgumentType(help='The pricing tiers, e.g., F1(Free), D1(Shared), B1(Basic Small), B2(Basic Medium), B3(Basic Large), S1(Standard Small), P1(Premium Small), etc',
**enum_choice_list(['F1', 'FREE', 'D1', 'SHARED', 'B1', 'B2', 'B3', 'S1', 'S2', 'S3', 'P1', 'P2', 'P3']))
webapp_name_arg_type = CliArgumentType(configured_default='web', options_list=('--name', '-n'), metavar='NAME',
completer=get_resource_name_completion_list('Microsoft.Web/sites'), id_part='name',
help="name of the web. You can configure the default using 'az configure --defaults web=<name>'")
# use this hidden arg to give a command the right instance, that functionapp commands
# work on function app and webapp ones work on web app
register_cli_argument('webapp', 'app_instance', ignore_type)
register_cli_argument('functionapp', 'app_instance', ignore_type)
# function app doesn't have slot support
register_cli_argument('functionapp', 'slot', ignore_type)
register_cli_argument('appservice', 'resource_group_name', arg_type=resource_group_name_type)
register_cli_argument('appservice', 'location', arg_type=location_type)
@ -80,8 +90,29 @@ register_cli_argument('webapp create', 'plan', options_list=('--plan', '-p'), co
register_cli_argument('webapp browse', 'logs', options_list=('--logs', '-l'), action='store_true', help='Enable viewing the log stream immediately after launching the web app')
register_cli_argument('webapp deployment user', 'user_name', help='user name')
register_cli_argument('webapp deployment user', 'password', help='password, will prompt if not specified')
for scope in ['webapp', 'functionapp']:
register_cli_argument(scope + ' config ssl bind', 'ssl_type', help='The ssl cert type', **enum_choice_list(['SNI', 'IP']))
register_cli_argument(scope + ' config ssl upload', 'certificate_password', help='The ssl cert password')
register_cli_argument(scope + ' config ssl upload', 'certificate_file', type=file_type, help='The filepath for the .pfx file')
register_cli_argument(scope + ' config ssl', 'certificate_thumbprint', help='The ssl cert thumbprint')
register_cli_argument(scope + ' config appsettings', 'settings', nargs='+', help="space separated app settings in a format of <name>=<value>")
register_cli_argument(scope + ' config appsettings', 'setting_names', nargs='+', help="space separated app setting names")
register_cli_argument(scope + ' config hostname', 'hostname', completer=get_hostname_completion_list, help="hostname assigned to the site, such as custom domains", id_part='child_name')
register_cli_argument(scope + ' deployment user', 'user_name', help='user name')
register_cli_argument(scope + ' deployment user', 'password', help='password, will prompt if not specified')
register_cli_argument(scope + ' deployment source', 'manual_integration', action='store_true', help='disable automatic sync between source control and web')
register_cli_argument(scope + ' deployment source', 'repo_url', help='repository url to pull the latest source from, e.g. https://github.com/foo/foo-web')
register_cli_argument(scope + ' deployment source', 'branch', help='the branch name of the repository')
register_cli_argument(scope + ' deployment source', 'cd_provider', help='type of CI/CD provider', default='kudu', **enum_choice_list(['kudu', 'vsts']))
register_cli_argument(scope + ' deployment source', 'cd_app_type', arg_group='VSTS CD Provider', help='web application framework you used to develop your app', default='AspNetWap', **enum_choice_list(['AspNetWap', 'AspNetCore', 'NodeJSWithGulp', 'NodeJSWithGrunt']))
register_cli_argument(scope + ' deployment source', 'cd_account', arg_group='VSTS CD Provider', help='name of the Team Services account to create/use for continuous delivery')
register_cli_argument(scope + ' deployment source', 'cd_account_must_exist', arg_group='VSTS CD Provider', help='specifies that the account must already exist. If not specified, the account will be created if it does not already exist (existing accounts are updated)', action='store_true')
register_cli_argument(scope + ' deployment source', 'repository_type', help='repository type', default='git', **enum_choice_list(['git', 'mercurial']))
register_cli_argument(scope + ' deployment source', 'git_token', help='git access token required for auto sync')
register_cli_argument('webapp config hostname', 'webapp_name', help="webapp name. You can configure the default using 'az configure --defaults web=<name>'", configured_default='web',
completer=get_resource_name_completion_list('Microsoft.Web/sites'), id_part='name')
register_cli_argument('webapp config appsettings', 'slot_settings', nargs='+', help="space separated slot app settings in a format of <name>=<value>")
register_cli_argument('webapp deployment slot', 'slot', help='the name of the slot')
register_cli_argument('webapp deployment slot', 'webapp', arg_type=name_arg_type, completer=get_resource_name_completion_list('Microsoft.Web/sites'),
@ -111,10 +142,6 @@ for scope in ['appsettings', 'connection-string']:
register_cli_argument('webapp config connection-string', 'connection_string_type',
options_list=('--connection-string-type', '-t'), help='connection string type', **enum_choice_list(ConnectionStringType))
register_cli_argument('webapp config appsettings', 'settings', nargs='+', help="space separated app settings in a format of `<name>=<value>`")
register_cli_argument('webapp config appsettings', 'slot_settings', nargs='+', help="space separated slot app settings in a format of `<name>=<value>`")
register_cli_argument('webapp config appsettings', 'setting_names', nargs='+', help="space separated app setting names")
register_cli_argument('webapp config container', 'docker_registry_server_url', options_list=('--docker-registry-server-url', '-r'), help='the container registry server url')
register_cli_argument('webapp config container', 'docker_custom_image_name', options_list=('--docker-custom-image-name', '-c'), help='the container custom image name and optionally the tag name')
register_cli_argument('webapp config container', 'docker_registry_server_user', options_list=('--docker-registry-server-user', '-u'), help='the container registry server username')
@ -135,15 +162,6 @@ register_cli_argument('webapp config set', 'java_container', help="The java cont
register_cli_argument('webapp config set', 'java_container_version', help="The version of the java container, e.g., '8.0.23' for Tomcat")
register_cli_argument('webapp config set', 'app_command_line', options_list=('--startup-file',), help="The startup file for linux hosted web apps, e.g. 'process.json' for Node.js web")
register_cli_argument('webapp config ssl bind', 'ssl_type', help='The ssl cert type', **enum_choice_list(['SNI', 'IP']))
register_cli_argument('webapp config ssl upload', 'certificate_password', help='The ssl cert password')
register_cli_argument('webapp config ssl upload', 'certificate_file', type=file_type, help='The filepath for the .pfx file')
register_cli_argument('webapp config ssl', 'certificate_thumbprint', help='The ssl cert thumbprint')
register_cli_argument('webapp config hostname', 'webapp_name', help="webapp name. You can configure the default using 'az configure --defaults web=<name>'", configured_default='web',
completer=get_resource_name_completion_list('Microsoft.Web/sites'), id_part='name')
register_cli_argument('webapp config hostname', 'hostname', completer=get_hostname_completion_list, help="hostname assigned to the site, such as custom domains", id_part='child_name')
register_cli_argument('webapp config backup', 'storage_account_url', help='URL with SAS token to the blob storage container', options_list=['--container-url'])
register_cli_argument('webapp config backup', 'webapp_name', help='The name of the webapp')
register_cli_argument('webapp config backup', 'db_name', help='Name of the database in the backup', arg_group='Database')
@ -161,15 +179,6 @@ register_cli_argument('webapp config backup restore', 'target_name', help='The n
register_cli_argument('webapp config backup restore', 'overwrite', help='Overwrite the source webapp, if --target-name is not specified', action='store_true')
register_cli_argument('webapp config backup restore', 'ignore_hostname_conflict', help='Ignores custom hostnames stored in the backup', action='store_true')
register_cli_argument('webapp deployment source', 'manual_integration', action='store_true', help='disable automatic sync between source control and web')
register_cli_argument('webapp deployment source', 'repo_url', help='repository url to pull the latest source from, e.g. https://github.com/foo/foo-web')
register_cli_argument('webapp deployment source', 'branch', help='the branch name of the repository')
register_cli_argument('webapp deployment source', 'cd_provider', help='type of CI/CD provider', default='kudu', **enum_choice_list(['kudu', 'vsts']))
register_cli_argument('webapp deployment source', 'cd_app_type', arg_group='VSTS CD Provider', help='web application framework you used to develop your app', default='AspNetWap', **enum_choice_list(['AspNetWap', 'AspNetCore', 'NodeJSWithGulp', 'NodeJSWithGrunt']))
register_cli_argument('webapp deployment source', 'cd_account', arg_group='VSTS CD Provider', help='name of the Team Services account to create/use for continuous delivery')
register_cli_argument('webapp deployment source', 'cd_account_must_exist', arg_group='VSTS CD Provider', help='specifies that the account must already exist. If not specified, the account will be created if it does not already exist (existing accounts are updated)', action='store_true')
register_cli_argument('webapp deployment source', 'repository_type', help='repository type', default='git', **enum_choice_list(['git', 'mercurial']))
register_cli_argument('webapp deployment source', 'git_token', help='git access token required for auto sync')
# end of new ones
# start of old ones #
@ -273,3 +282,24 @@ register_cli_argument('appservice web source-control', 'cd_account_must_exist',
register_cli_argument('appservice web source-control', 'repository_type', help='repository type', default='git', **enum_choice_list(['git', 'mercurial']))
register_cli_argument('appservice web source-control', 'git_token', help='git access token required for auto sync')
# end of olds ones #
register_cli_argument('functionapp', 'name', arg_type=name_arg_type, id_part='name', help='name of the function app')
register_cli_argument('functionapp config hostname', 'webapp_name', arg_type=name_arg_type, id_part='name', help='name of the function app')
register_cli_argument('functionapp create', 'plan', options_list=('--plan', '-p'), completer=get_resource_name_completion_list('Microsoft.Web/serverFarms'),
help="name or resource id of the function app service plan. Use 'appservice plan create' to get one")
register_cli_argument('functionapp create', 'new_app_name', options_list=('--name', '-n'), help='name of the new function app')
register_cli_argument('functionapp create', 'storage_account', options_list=('--storage-account', '-s'),
help='Provide a string value of a Storage Account in the provided Resource Group. Or Resource ID of a Storage Account in a different Resource Group')
# For commands with shared impl between webapp and functionapp and has output, we apply type validation to avoid confusions
register_cli_argument('appservice web show', 'name', arg_type=webapp_name_arg_type, validator=validate_existing_web_app)
register_cli_argument('webapp show', 'name', arg_type=webapp_name_arg_type, validator=validate_existing_web_app)
register_cli_argument('functionapp show', 'name', arg_type=name_arg_type, validator=validate_existing_function_app)
register_cli_argument('functionapp', 'name', arg_type=name_arg_type, id_part='name', help="name of the function")
register_cli_argument('functionapp create', 'plan', options_list=('--plan', '-p'), completer=get_resource_name_completion_list('Microsoft.Web/serverFarms'),
help="name or resource id of the function app service plan. Use 'appservice plan create' to get one")
register_cli_argument('functionapp create', 'consumption_plan_location', options_list=('--consumption-plan-location', '-c'),
help="Geographic location where Function App will be hosted. Use 'functionapp list-consumption-locations' to view available locations.")
register_cli_argument('functionapp create', 'storage_account', options_list=('--storage-account', '-s'),
help='Provide a string value of a Storage Account in the provided Resource Group. Or Resource ID of a Storage Account in a different Resource Group')

Просмотреть файл

@ -0,0 +1,24 @@
# --------------------------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.
# --------------------------------------------------------------------------------------------
from azure.cli.core.util import CLIError
from ._client_factory import web_client_factory
def validate_existing_function_app(namespace):
validate_existing_app(namespace, 'functionapp')
def validate_existing_web_app(namespace):
validate_existing_app(namespace, 'app')
def validate_existing_app(namespace, app_type):
client = web_client_factory()
instance = client.web_apps.get(namespace.resource_group_name, namespace.name)
if instance.kind != app_type: # pylint: disable=no-member
raise CLIError('Usage Error: {} is not a correct app type'.format(namespace.name))
setattr(namespace, 'app_instance', instance)

Просмотреть файл

@ -53,135 +53,168 @@ def ex_handler_factory(creating_plan=False):
return _polish_bad_errors
custom_path = 'azure.cli.command_modules.appservice.custom#'
# beginning of the new ones #
cli_command(__name__, 'webapp create', 'azure.cli.command_modules.appservice.custom#create_webapp', exception_handler=ex_handler_factory())
cli_command(__name__, 'webapp list', 'azure.cli.command_modules.appservice.custom#list_webapp', table_transformer=transform_web_list_output)
cli_command(__name__, 'webapp show', 'azure.cli.command_modules.appservice.custom#show_webapp', exception_handler=empty_on_404, table_transformer=transform_web_output)
cli_command(__name__, 'webapp delete', 'azure.cli.command_modules.appservice.custom#delete_webapp')
cli_command(__name__, 'webapp stop', 'azure.cli.command_modules.appservice.custom#stop_webapp')
cli_command(__name__, 'webapp start', 'azure.cli.command_modules.appservice.custom#start_webapp')
cli_command(__name__, 'webapp restart', 'azure.cli.command_modules.appservice.custom#restart_webapp')
cli_command(__name__, 'webapp create', custom_path + 'create_webapp', exception_handler=ex_handler_factory())
cli_command(__name__, 'webapp list', custom_path + 'list_webapp', table_transformer=transform_web_list_output)
cli_command(__name__, 'webapp show', custom_path + 'show_webapp', exception_handler=empty_on_404, table_transformer=transform_web_output)
cli_command(__name__, 'webapp delete', custom_path + 'delete_webapp')
cli_command(__name__, 'webapp stop', custom_path + 'stop_webapp')
cli_command(__name__, 'webapp start', custom_path + 'start_webapp')
cli_command(__name__, 'webapp restart', custom_path + 'restart_webapp')
cli_command(__name__, 'webapp config set', 'azure.cli.command_modules.appservice.custom#update_site_configs')
cli_command(__name__, 'webapp config show', 'azure.cli.command_modules.appservice.custom#get_site_configs', exception_handler=empty_on_404)
cli_command(__name__, 'webapp config appsettings show', 'azure.cli.command_modules.appservice.custom#get_app_settings', exception_handler=empty_on_404)
cli_command(__name__, 'webapp config appsettings set', 'azure.cli.command_modules.appservice.custom#update_app_settings')
cli_command(__name__, 'webapp config appsettings delete', 'azure.cli.command_modules.appservice.custom#delete_app_settings')
cli_command(__name__, 'webapp config connection-string show', 'azure.cli.command_modules.appservice.custom#get_connection_strings', exception_handler=empty_on_404)
cli_command(__name__, 'webapp config connection-string set', 'azure.cli.command_modules.appservice.custom#update_connection_strings')
cli_command(__name__, 'webapp config connection-string delete', 'azure.cli.command_modules.appservice.custom#delete_connection_strings')
cli_command(__name__, 'webapp config set', custom_path + 'update_site_configs')
cli_command(__name__, 'webapp config show', custom_path + 'get_site_configs', exception_handler=empty_on_404)
cli_command(__name__, 'webapp config appsettings show', custom_path + 'get_app_settings', exception_handler=empty_on_404)
cli_command(__name__, 'webapp config appsettings set', custom_path + 'update_app_settings')
cli_command(__name__, 'webapp config appsettings delete', custom_path + 'delete_app_settings')
cli_command(__name__, 'webapp config connection-string show', custom_path + 'get_connection_strings', exception_handler=empty_on_404)
cli_command(__name__, 'webapp config connection-string set', custom_path + 'update_connection_strings')
cli_command(__name__, 'webapp config connection-string delete', custom_path + 'delete_connection_strings')
cli_command(__name__, 'webapp config hostname add', 'azure.cli.command_modules.appservice.custom#add_hostname', exception_handler=ex_handler_factory())
cli_command(__name__, 'webapp config hostname list', 'azure.cli.command_modules.appservice.custom#list_hostnames')
cli_command(__name__, 'webapp config hostname delete', 'azure.cli.command_modules.appservice.custom#delete_hostname')
cli_command(__name__, 'webapp config hostname get-external-ip', 'azure.cli.command_modules.appservice.custom#get_external_ip')
cli_command(__name__, 'webapp config container set', 'azure.cli.command_modules.appservice.custom#update_container_settings')
cli_command(__name__, 'webapp config container delete', 'azure.cli.command_modules.appservice.custom#delete_container_settings')
cli_command(__name__, 'webapp config container show', 'azure.cli.command_modules.appservice.custom#show_container_settings', exception_handler=empty_on_404)
cli_command(__name__, 'webapp config hostname add', custom_path + 'add_hostname', exception_handler=ex_handler_factory())
cli_command(__name__, 'webapp config hostname list', custom_path + 'list_hostnames')
cli_command(__name__, 'webapp config hostname delete', custom_path + 'delete_hostname')
cli_command(__name__, 'webapp config hostname get-external-ip', custom_path + 'get_external_ip')
cli_command(__name__, 'webapp config container set', custom_path + 'update_container_settings')
cli_command(__name__, 'webapp config container delete', custom_path + 'delete_container_settings')
cli_command(__name__, 'webapp config container show', custom_path + 'show_container_settings', exception_handler=empty_on_404)
cli_command(__name__, 'webapp config ssl upload', 'azure.cli.command_modules.appservice.custom#upload_ssl_cert', exception_handler=ex_handler_factory())
cli_command(__name__, 'webapp config ssl list', 'azure.cli.command_modules.appservice.custom#list_ssl_certs')
cli_command(__name__, 'webapp config ssl bind', 'azure.cli.command_modules.appservice.custom#bind_ssl_cert', exception_handler=ex_handler_factory())
cli_command(__name__, 'webapp config ssl unbind', 'azure.cli.command_modules.appservice.custom#unbind_ssl_cert')
cli_command(__name__, 'webapp config ssl delete', 'azure.cli.command_modules.appservice.custom#delete_ssl_cert')
cli_command(__name__, 'webapp config ssl upload', custom_path + 'upload_ssl_cert', exception_handler=ex_handler_factory())
cli_command(__name__, 'webapp config ssl list', custom_path + 'list_ssl_certs')
cli_command(__name__, 'webapp config ssl bind', custom_path + 'bind_ssl_cert', exception_handler=ex_handler_factory())
cli_command(__name__, 'webapp config ssl unbind', custom_path + 'unbind_ssl_cert')
cli_command(__name__, 'webapp config ssl delete', custom_path + 'delete_ssl_cert')
cli_command(__name__, 'webapp config backup list', 'azure.cli.command_modules.appservice.custom#list_backups')
cli_command(__name__, 'webapp config backup show', 'azure.cli.command_modules.appservice.custom#show_backup_configuration', exception_handler=empty_on_404)
cli_command(__name__, 'webapp config backup create', 'azure.cli.command_modules.appservice.custom#create_backup', exception_handler=ex_handler_factory())
cli_command(__name__, 'webapp config backup update', 'azure.cli.command_modules.appservice.custom#update_backup_schedule', exception_handler=ex_handler_factory())
cli_command(__name__, 'webapp config backup restore', 'azure.cli.command_modules.appservice.custom#restore_backup', exception_handler=ex_handler_factory())
cli_command(__name__, 'webapp config backup list', custom_path + 'list_backups')
cli_command(__name__, 'webapp config backup show', custom_path + 'show_backup_configuration', exception_handler=empty_on_404)
cli_command(__name__, 'webapp config backup create', custom_path + 'create_backup', exception_handler=ex_handler_factory())
cli_command(__name__, 'webapp config backup update', custom_path + 'update_backup_schedule', exception_handler=ex_handler_factory())
cli_command(__name__, 'webapp config backup restore', custom_path + 'restore_backup', exception_handler=ex_handler_factory())
cli_command(__name__, 'webapp deployment source config-local-git', 'azure.cli.command_modules.appservice.custom#enable_local_git')
cli_command(__name__, 'webapp deployment source config', 'azure.cli.command_modules.appservice.custom#config_source_control', exception_handler=ex_handler_factory())
cli_command(__name__, 'webapp deployment source sync', 'azure.cli.command_modules.appservice.custom#sync_site_repo')
cli_command(__name__, 'webapp deployment source show', 'azure.cli.command_modules.appservice.custom#show_source_control', exception_handler=empty_on_404)
cli_command(__name__, 'webapp deployment source delete', 'azure.cli.command_modules.appservice.custom#delete_source_control')
cli_command(__name__, 'webapp deployment source update-token', 'azure.cli.command_modules.appservice.custom#update_git_token', exception_handler=ex_handler_factory())
cli_command(__name__, 'webapp deployment source config-local-git', custom_path + 'enable_local_git')
cli_command(__name__, 'webapp deployment source config', custom_path + 'config_source_control', exception_handler=ex_handler_factory())
cli_command(__name__, 'webapp deployment source sync', custom_path + 'sync_site_repo')
cli_command(__name__, 'webapp deployment source show', custom_path + 'show_source_control', exception_handler=empty_on_404)
cli_command(__name__, 'webapp deployment source delete', custom_path + 'delete_source_control')
cli_command(__name__, 'webapp deployment source update-token', custom_path + 'update_git_token', exception_handler=ex_handler_factory())
cli_command(__name__, 'webapp log tail', 'azure.cli.command_modules.appservice.custom#get_streaming_log')
cli_command(__name__, 'webapp log download', 'azure.cli.command_modules.appservice.custom#download_historical_logs')
cli_command(__name__, 'webapp log config', 'azure.cli.command_modules.appservice.custom#config_diagnostics')
cli_command(__name__, 'webapp browse', 'azure.cli.command_modules.appservice.custom#view_in_browser')
cli_command(__name__, 'webapp log tail', custom_path + 'get_streaming_log')
cli_command(__name__, 'webapp log download', custom_path + 'download_historical_logs')
cli_command(__name__, 'webapp log config', custom_path + 'config_diagnostics')
cli_command(__name__, 'webapp browse', custom_path + 'view_in_browser')
cli_command(__name__, 'webapp deployment slot list', 'azure.cli.command_modules.appservice.custom#list_slots', table_transformer=output_slots_in_table)
cli_command(__name__, 'webapp deployment slot delete', 'azure.cli.command_modules.appservice.custom#delete_slot')
cli_command(__name__, 'webapp deployment slot auto-swap', 'azure.cli.command_modules.appservice.custom#config_slot_auto_swap')
cli_command(__name__, 'webapp deployment slot swap', 'azure.cli.command_modules.appservice.custom#swap_slot', exception_handler=ex_handler_factory())
cli_command(__name__, 'webapp deployment slot create', 'azure.cli.command_modules.appservice.custom#create_webapp_slot', exception_handler=ex_handler_factory())
cli_command(__name__, 'webapp deployment slot list', custom_path + 'list_slots', table_transformer=output_slots_in_table)
cli_command(__name__, 'webapp deployment slot delete', custom_path + 'delete_slot')
cli_command(__name__, 'webapp deployment slot auto-swap', custom_path + 'config_slot_auto_swap')
cli_command(__name__, 'webapp deployment slot swap', custom_path + 'swap_slot', exception_handler=ex_handler_factory())
cli_command(__name__, 'webapp deployment slot create', custom_path + 'create_webapp_slot', exception_handler=ex_handler_factory())
cli_command(__name__, 'webapp deployment user set', 'azure.cli.command_modules.appservice.custom#set_deployment_user')
cli_command(__name__, 'webapp deployment user set', custom_path + 'set_deployment_user')
cli_command(__name__, 'webapp deployment list-publishing-profiles',
'azure.cli.command_modules.appservice.custom#list_publish_profiles')
custom_path + 'list_publish_profiles')
cli_command(__name__, 'webapp deployment user show', 'azure.mgmt.web.web_site_management_client#WebSiteManagementClient.get_publishing_user', cf_web_client, exception_handler=empty_on_404)
cli_command(__name__, 'webapp list-runtimes', 'azure.cli.command_modules.appservice.custom#list_runtimes')
cli_command(__name__, 'webapp list-runtimes', custom_path + 'list_runtimes')
# end of the new ones #
# beginning of the old ones ###
cli_command(__name__, 'appservice web create', 'azure.cli.command_modules.appservice.custom#create_webapp', exception_handler=ex_handler_factory())
cli_command(__name__, 'appservice web list', 'azure.cli.command_modules.appservice.custom#list_webapp', table_transformer=transform_web_list_output)
cli_command(__name__, 'appservice web show', 'azure.cli.command_modules.appservice.custom#show_webapp', exception_handler=empty_on_404, table_transformer=transform_web_output)
cli_command(__name__, 'appservice web delete', 'azure.cli.command_modules.appservice.custom#delete_webapp')
cli_command(__name__, 'appservice web stop', 'azure.cli.command_modules.appservice.custom#stop_webapp')
cli_command(__name__, 'appservice web start', 'azure.cli.command_modules.appservice.custom#start_webapp')
cli_command(__name__, 'appservice web restart', 'azure.cli.command_modules.appservice.custom#restart_webapp')
cli_command(__name__, 'appservice web create', custom_path + 'create_webapp', exception_handler=ex_handler_factory())
cli_command(__name__, 'appservice web list', custom_path + 'list_webapp', table_transformer=transform_web_list_output)
cli_command(__name__, 'appservice web show', custom_path + 'show_webapp', exception_handler=empty_on_404, table_transformer=transform_web_output)
cli_command(__name__, 'appservice web delete', custom_path + 'delete_webapp')
cli_command(__name__, 'appservice web stop', custom_path + 'stop_webapp')
cli_command(__name__, 'appservice web start', custom_path + 'start_webapp')
cli_command(__name__, 'appservice web restart', custom_path + 'restart_webapp')
cli_command(__name__, 'appservice web config update', 'azure.cli.command_modules.appservice.custom#update_site_configs')
cli_command(__name__, 'appservice web config show', 'azure.cli.command_modules.appservice.custom#get_site_configs', exception_handler=empty_on_404)
cli_command(__name__, 'appservice web config appsettings show', 'azure.cli.command_modules.appservice.custom#get_app_settings', exception_handler=empty_on_404)
cli_command(__name__, 'appservice web config appsettings update', 'azure.cli.command_modules.appservice.custom#update_app_settings')
cli_command(__name__, 'appservice web config appsettings delete', 'azure.cli.command_modules.appservice.custom#delete_app_settings')
cli_command(__name__, 'appservice web config update', custom_path + 'update_site_configs')
cli_command(__name__, 'appservice web config show', custom_path + 'get_site_configs', exception_handler=empty_on_404)
cli_command(__name__, 'appservice web config appsettings show', custom_path + 'get_app_settings', exception_handler=empty_on_404)
cli_command(__name__, 'appservice web config appsettings update', custom_path + 'update_app_settings')
cli_command(__name__, 'appservice web config appsettings delete', custom_path + 'delete_app_settings')
cli_command(__name__, 'appservice web config hostname add', 'azure.cli.command_modules.appservice.custom#add_hostname', exception_handler=ex_handler_factory())
cli_command(__name__, 'appservice web config hostname list', 'azure.cli.command_modules.appservice.custom#list_hostnames')
cli_command(__name__, 'appservice web config hostname delete', 'azure.cli.command_modules.appservice.custom#delete_hostname')
cli_command(__name__, 'appservice web config hostname get-external-ip', 'azure.cli.command_modules.appservice.custom#get_external_ip')
cli_command(__name__, 'appservice web config container update', 'azure.cli.command_modules.appservice.custom#update_container_settings')
cli_command(__name__, 'appservice web config container delete', 'azure.cli.command_modules.appservice.custom#delete_container_settings')
cli_command(__name__, 'appservice web config container show', 'azure.cli.command_modules.appservice.custom#show_container_settings', exception_handler=empty_on_404)
cli_command(__name__, 'appservice web config hostname add', custom_path + 'add_hostname', exception_handler=ex_handler_factory())
cli_command(__name__, 'appservice web config hostname list', custom_path + 'list_hostnames')
cli_command(__name__, 'appservice web config hostname delete', custom_path + 'delete_hostname')
cli_command(__name__, 'appservice web config hostname get-external-ip', custom_path + 'get_external_ip')
cli_command(__name__, 'appservice web config container update', custom_path + 'update_container_settings')
cli_command(__name__, 'appservice web config container delete', custom_path + 'delete_container_settings')
cli_command(__name__, 'appservice web config container show', custom_path + 'show_container_settings', exception_handler=empty_on_404)
cli_command(__name__, 'appservice web config ssl upload', 'azure.cli.command_modules.appservice.custom#upload_ssl_cert', exception_handler=ex_handler_factory())
cli_command(__name__, 'appservice web config ssl list', 'azure.cli.command_modules.appservice.custom#list_ssl_certs')
cli_command(__name__, 'appservice web config ssl bind', 'azure.cli.command_modules.appservice.custom#bind_ssl_cert', exception_handler=ex_handler_factory())
cli_command(__name__, 'appservice web config ssl unbind', 'azure.cli.command_modules.appservice.custom#unbind_ssl_cert')
cli_command(__name__, 'appservice web config ssl delete', 'azure.cli.command_modules.appservice.custom#delete_ssl_cert')
cli_command(__name__, 'appservice web config ssl upload', custom_path + 'upload_ssl_cert', exception_handler=ex_handler_factory())
cli_command(__name__, 'appservice web config ssl list', custom_path + 'list_ssl_certs')
cli_command(__name__, 'appservice web config ssl bind', custom_path + 'bind_ssl_cert', exception_handler=ex_handler_factory())
cli_command(__name__, 'appservice web config ssl unbind', custom_path + 'unbind_ssl_cert')
cli_command(__name__, 'appservice web config ssl delete', custom_path + 'delete_ssl_cert')
cli_command(__name__, 'appservice web config backup list', 'azure.cli.command_modules.appservice.custom#list_backups')
cli_command(__name__, 'appservice web config backup show', 'azure.cli.command_modules.appservice.custom#show_backup_configuration', exception_handler=empty_on_404)
cli_command(__name__, 'appservice web config backup create', 'azure.cli.command_modules.appservice.custom#create_backup', exception_handler=ex_handler_factory())
cli_command(__name__, 'appservice web config backup update', 'azure.cli.command_modules.appservice.custom#update_backup_schedule', exception_handler=ex_handler_factory())
cli_command(__name__, 'appservice web config backup restore', 'azure.cli.command_modules.appservice.custom#restore_backup', exception_handler=ex_handler_factory())
cli_command(__name__, 'appservice web config backup list', custom_path + 'list_backups')
cli_command(__name__, 'appservice web config backup show', custom_path + 'show_backup_configuration', exception_handler=empty_on_404)
cli_command(__name__, 'appservice web config backup create', custom_path + 'create_backup', exception_handler=ex_handler_factory())
cli_command(__name__, 'appservice web config backup update', custom_path + 'update_backup_schedule', exception_handler=ex_handler_factory())
cli_command(__name__, 'appservice web config backup restore', custom_path + 'restore_backup', exception_handler=ex_handler_factory())
cli_command(__name__, 'appservice web source-control config-local-git', 'azure.cli.command_modules.appservice.custom#enable_local_git')
cli_command(__name__, 'appservice web source-control config', 'azure.cli.command_modules.appservice.custom#config_source_control', exception_handler=ex_handler_factory())
cli_command(__name__, 'appservice web source-control sync', 'azure.cli.command_modules.appservice.custom#sync_site_repo')
cli_command(__name__, 'appservice web source-control show', 'azure.cli.command_modules.appservice.custom#show_source_control', exception_handler=empty_on_404)
cli_command(__name__, 'appservice web source-control delete', 'azure.cli.command_modules.appservice.custom#delete_source_control')
cli_command(__name__, 'appservice web source-control update-token', 'azure.cli.command_modules.appservice.custom#update_git_token', exception_handler=ex_handler_factory())
cli_command(__name__, 'appservice web source-control config-local-git', custom_path + 'enable_local_git')
cli_command(__name__, 'appservice web source-control config', custom_path + 'config_source_control', exception_handler=ex_handler_factory())
cli_command(__name__, 'appservice web source-control sync', custom_path + 'sync_site_repo')
cli_command(__name__, 'appservice web source-control show', custom_path + 'show_source_control', exception_handler=empty_on_404)
cli_command(__name__, 'appservice web source-control delete', custom_path + 'delete_source_control')
cli_command(__name__, 'appservice web source-control update-token', custom_path + 'update_git_token', exception_handler=ex_handler_factory())
cli_command(__name__, 'appservice web log tail', 'azure.cli.command_modules.appservice.custom#get_streaming_log')
cli_command(__name__, 'appservice web log download', 'azure.cli.command_modules.appservice.custom#download_historical_logs')
cli_command(__name__, 'appservice web log config', 'azure.cli.command_modules.appservice.custom#config_diagnostics')
cli_command(__name__, 'appservice web browse', 'azure.cli.command_modules.appservice.custom#view_in_browser')
cli_command(__name__, 'appservice web log tail', custom_path + 'get_streaming_log')
cli_command(__name__, 'appservice web log download', custom_path + 'download_historical_logs')
cli_command(__name__, 'appservice web log config', custom_path + 'config_diagnostics')
cli_command(__name__, 'appservice web browse', custom_path + 'view_in_browser')
cli_command(__name__, 'appservice web deployment slot list', 'azure.cli.command_modules.appservice.custom#list_slots', table_transformer=output_slots_in_table)
cli_command(__name__, 'appservice web deployment slot delete', 'azure.cli.command_modules.appservice.custom#delete_slot')
cli_command(__name__, 'appservice web deployment slot auto-swap', 'azure.cli.command_modules.appservice.custom#config_slot_auto_swap')
cli_command(__name__, 'appservice web deployment slot swap', 'azure.cli.command_modules.appservice.custom#swap_slot', exception_handler=ex_handler_factory())
cli_command(__name__, 'appservice web deployment slot create', 'azure.cli.command_modules.appservice.custom#create_webapp_slot', exception_handler=ex_handler_factory())
cli_command(__name__, 'appservice web deployment slot list', custom_path + 'list_slots', table_transformer=output_slots_in_table)
cli_command(__name__, 'appservice web deployment slot delete', custom_path + 'delete_slot')
cli_command(__name__, 'appservice web deployment slot auto-swap', custom_path + 'config_slot_auto_swap')
cli_command(__name__, 'appservice web deployment slot swap', custom_path + 'swap_slot', exception_handler=ex_handler_factory())
cli_command(__name__, 'appservice web deployment slot create', custom_path + 'create_webapp_slot', exception_handler=ex_handler_factory())
cli_command(__name__, 'appservice web deployment user set', 'azure.cli.command_modules.appservice.custom#set_deployment_user')
cli_command(__name__, 'appservice web deployment user set', custom_path + 'set_deployment_user')
cli_command(__name__, 'appservice web deployment list-publishing-profiles',
'azure.cli.command_modules.appservice.custom#list_publish_profiles')
custom_path + 'list_publish_profiles')
cli_command(__name__, 'appservice web deployment user show', 'azure.mgmt.web.web_site_management_client#WebSiteManagementClient.get_publishing_user', cf_web_client, exception_handler=empty_on_404)
# end of the old ones ###
cli_command(__name__, 'appservice plan create', 'azure.cli.command_modules.appservice.custom#create_app_service_plan', exception_handler=ex_handler_factory(creating_plan=True))
cli_command(__name__, 'appservice plan create', custom_path + 'create_app_service_plan', exception_handler=ex_handler_factory(creating_plan=True))
cli_command(__name__, 'appservice plan delete', 'azure.mgmt.web.operations.app_service_plans_operations#AppServicePlansOperations.delete', cf_plans, confirmation=True)
cli_command(__name__, 'appservice plan list', 'azure.cli.command_modules.appservice.custom#list_app_service_plans')
cli_command(__name__, 'appservice plan list', custom_path + 'list_app_service_plans')
cli_command(__name__, 'appservice plan show', 'azure.mgmt.web.operations.app_service_plans_operations#AppServicePlansOperations.get', cf_plans, exception_handler=empty_on_404)
cli_generic_update_command(__name__, 'appservice plan update', 'azure.mgmt.web.operations.app_service_plans_operations#AppServicePlansOperations.get',
'azure.mgmt.web.operations.app_service_plans_operations#AppServicePlansOperations.create_or_update',
custom_function_op='azure.cli.command_modules.appservice.custom#update_app_service_plan',
custom_function_op=custom_path + 'update_app_service_plan',
setter_arg_name='app_service_plan', factory=cf_plans)
cli_command(__name__, 'appservice list-locations', 'azure.mgmt.web.web_site_management_client#WebSiteManagementClient.list_geo_regions', cf_web_client, transform=transform_list_location_output)
cli_command(__name__, 'functionapp create', custom_path + 'create_function')
cli_command(__name__, 'functionapp list', custom_path + 'list_function_app', table_transformer=transform_web_list_output)
cli_command(__name__, 'functionapp show', custom_path + 'show_webapp', exception_handler=empty_on_404, table_transformer=transform_web_output)
cli_command(__name__, 'functionapp delete', custom_path + 'delete_webapp')
cli_command(__name__, 'functionapp stop', custom_path + 'stop_webapp')
cli_command(__name__, 'functionapp start', custom_path + 'start_webapp')
cli_command(__name__, 'functionapp restart', custom_path + 'restart_webapp')
cli_command(__name__, 'functionapp list-consumption-locations', custom_path + 'list_consumption_locations')
cli_command(__name__, 'functionapp config appsettings show', custom_path + 'get_app_settings', exception_handler=empty_on_404)
cli_command(__name__, 'functionapp config appsettings set', custom_path + 'update_app_settings')
cli_command(__name__, 'functionapp config appsettings delete', custom_path + 'delete_app_settings')
cli_command(__name__, 'functionapp config hostname add', custom_path + 'add_hostname', exception_handler=ex_handler_factory())
cli_command(__name__, 'functionapp config hostname list', custom_path + 'list_hostnames')
cli_command(__name__, 'functionapp config hostname delete', custom_path + 'delete_hostname')
cli_command(__name__, 'functionapp config hostname get-external-ip', custom_path + 'get_external_ip')
cli_command(__name__, 'functionapp config ssl upload', custom_path + 'upload_ssl_cert', exception_handler=ex_handler_factory())
cli_command(__name__, 'functionapp config ssl list', custom_path + 'list_ssl_certs')
cli_command(__name__, 'functionapp config ssl bind', custom_path + 'bind_ssl_cert', exception_handler=ex_handler_factory())
cli_command(__name__, 'functionapp config ssl unbind', custom_path + 'unbind_ssl_cert')
cli_command(__name__, 'functionapp config ssl delete', custom_path + 'delete_ssl_cert')
cli_command(__name__, 'functionapp deployment source config-local-git', custom_path + 'enable_local_git')
cli_command(__name__, 'functionapp deployment source config', custom_path + 'config_source_control', exception_handler=ex_handler_factory())
cli_command(__name__, 'functionapp deployment source sync', custom_path + 'sync_site_repo')
cli_command(__name__, 'functionapp deployment source show', custom_path + 'show_source_control', exception_handler=empty_on_404)
cli_command(__name__, 'functionapp deployment source delete', custom_path + 'delete_source_control')
cli_command(__name__, 'functionapp deployment source update-token', custom_path + 'update_git_token', exception_handler=ex_handler_factory())
cli_command(__name__, 'functionapp deployment user set', custom_path + 'set_deployment_user')
cli_command(__name__, 'functionapp deployment list-publishing-profiles',
custom_path + 'list_publish_profiles')
cli_command(__name__, 'functionapp deployment user show', 'azure.mgmt.web.web_site_management_client#WebSiteManagementClient.get_publishing_user', cf_web_client, exception_handler=empty_on_404)

Просмотреть файл

@ -15,7 +15,8 @@ import OpenSSL.crypto
from msrestazure.azure_exceptions import CloudError
from azure.mgmt.web.models import (Site, SiteConfig, SiteConfigResource, User, AppServicePlan,
from azure.mgmt.storage import StorageManagementClient
from azure.mgmt.web.models import (Site, SiteConfig, User, AppServicePlan, SiteConfigResource,
SkuDescription, SslState, HostNameBinding,
BackupRequest, DatabaseBackupSetting, BackupSchedule,
RestoreRequest, FrequencyUnit, Certificate, HostNameSslState)
@ -96,19 +97,29 @@ def create_webapp(resource_group_name, name, plan, runtime=None,
return webapp
def show_webapp(resource_group_name, name, slot=None):
webapp = _generic_site_operation(resource_group_name, name, 'get', slot)
webapp = _rename_server_farm_props(webapp)
def show_webapp(resource_group_name, name, slot=None, app_instance=None):
webapp = (_generic_site_operation(resource_group_name, name, 'get', slot)
if slot else app_instance)
_rename_server_farm_props(webapp)
_fill_ftp_publishing_url(webapp, resource_group_name, name, slot)
return webapp
def list_webapp(resource_group_name=None):
return _list_app('app', resource_group_name)
def list_function_app(resource_group_name=None):
return _list_app('functionapp', resource_group_name)
def _list_app(app_type, resource_group_name=None):
client = web_client_factory()
if resource_group_name:
result = list(client.web_apps.list_by_resource_group(resource_group_name))
else:
result = list(client.web_apps.list())
result = [x for x in result if x.kind == app_type]
for webapp in result:
_rename_server_farm_props(webapp)
return result
@ -1141,3 +1152,79 @@ class _StackRuntimeHelper(object):
r['setter'] = (_StackRuntimeHelper.update_site_appsettings if 'node' in
r['displayName'] else _StackRuntimeHelper.update_site_config)
self._stacks = result
def create_function(resource_group_name, name, storage_account, plan=None,
consumption_plan_location=None):
if bool(plan) == bool(consumption_plan_location):
raise CLIError("usage error: --plan NAME_OR_ID | --consumption-plan-location LOCATION")
functionapp_def = Site(location='')
client = web_client_factory()
if consumption_plan_location:
locations = list_consumption_locations()
location = next((l for l in locations if l['name'].lower() == consumption_plan_location.lower()), None) # pylint: disable=line-too-long
if location is None:
raise CLIError("Location is invalid. Use: az functionapp list-consumption-locations")
functionapp_def.location = consumption_plan_location
else:
if is_valid_resource_id(plan):
plan = parse_resource_id(plan)['name']
plan_info = client.app_service_plans.get(resource_group_name, plan)
location = plan_info.location
functionapp_def.server_farm_id = plan
functionapp_def.location = location
con_string = _validate_and_get_connection_string(resource_group_name, storage_account)
functionapp_def.kind = 'functionapp'
poller = client.web_apps.create_or_update(resource_group_name, name, functionapp_def)
functionapp = LongRunningOperation()(poller)
# adding appsetting to site to make it a function
settings = ['AzureWebJobsStorage=' + con_string, 'AzureWebJobsDashboard=' + con_string,
'WEBSITE_NODE_DEFAULT_VERSION=6.5.0', 'FUNCTIONS_EXTENSION_VERSION=~1']
if consumption_plan_location is None:
update_site_configs(resource_group_name, name, always_on='true')
else:
settings.append('WEBSITE_CONTENTAZUREFILECONNECTIONSTRING=' + con_string)
settings.append('WEBSITE_CONTENTSHARE=' + name.lower())
update_app_settings(resource_group_name, name, settings, None)
return functionapp
def _validate_and_get_connection_string(resource_group_name, storage_account):
sa_resource_group = resource_group_name
if is_valid_resource_id(storage_account):
sa_resource_group = parse_resource_id(storage_account)['resource_group']
storage_account = parse_resource_id(storage_account)['name']
storage_client = get_mgmt_service_client(StorageManagementClient)
storage_properties = storage_client.storage_accounts.get_properties(sa_resource_group,
storage_account)
error_message = ''
endpoints = storage_properties.primary_endpoints
sku = storage_properties.sku.name.value
allowed_storage_types = ['Standard_GRS', 'Standard_LRS', 'Standard_ZRS', 'Premium_LRS']
for e in ['blob', 'queue', 'table']:
if not getattr(endpoints, e, None):
error_message = "Storage account '{}' has no '{}' endpoint. It must have table, queue, and blob endpoints all enabled".format(e, storage_account) # pylint: disable=line-too-long
if sku not in allowed_storage_types:
error_message += 'Storage type {} is not allowed'.format(sku)
if error_message:
raise CLIError(error_message)
keys = storage_client.storage_accounts.list_keys(resource_group_name, storage_account).keys
conn_string = 'DefaultEndpointsProtocol=https;AccountName={};AccountKey={}'.format(storage_account, keys[0].value) # pylint: disable=line-too-long
return conn_string
def list_consumption_locations():
client = web_client_factory()
regions = client.list_geo_regions(sku='Dynamic')
return [{'name': x.name.lower().replace(" ", "")} for x in regions]

Просмотреть файл

@ -0,0 +1,450 @@
interactions:
- request:
body: null
headers:
Accept: [application/json]
Accept-Encoding: ['gzip, deflate']
Connection: [keep-alive]
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.2 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 resourcemanagementclient/0.30.2 Azure-SDK-For-Python
AZURECLI/TEST/2.0.2+dev]
accept-language: [en-US]
x-ms-client-request-id: [2cc3d492-1efa-11e7-a9d9-78acc0ad0877]
method: GET
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/azurecli-functionapp-e2e?api-version=2016-09-01
response:
body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-e2e","name":"azurecli-functionapp-e2e","location":"westus","tags":{"use":"az-test"},"properties":{"provisioningState":"Succeeded"}}'}
headers:
Cache-Control: [no-cache]
Content-Type: [application/json; charset=utf-8]
Date: ['Tue, 11 Apr 2017 21:02:29 GMT']
Expires: ['-1']
Pragma: [no-cache]
Strict-Transport-Security: [max-age=31536000; includeSubDomains]
Vary: [Accept-Encoding]
content-length: ['238']
status: {code: 200, message: OK}
- request:
body: '{"sku": {"tier": "BASIC", "capacity": 1, "name": "B1"}, "properties": {"perSiteScaling":
false, "name": "functionapp-e2e-plan"}, "location": "westus"}'
headers:
Accept: [application/json]
Accept-Encoding: ['gzip, deflate']
Connection: [keep-alive]
Content-Length: ['150']
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.2 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 websitemanagementclient/0.31.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.2+dev]
accept-language: [en-US]
x-ms-client-request-id: [2d0fe806-1efa-11e7-b036-78acc0ad0877]
method: PUT
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-e2e/providers/Microsoft.Web/serverfarms/functionapp-e2e-plan?api-version=2016-09-01
response:
body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-e2e/providers/Microsoft.Web/serverfarms/functionapp-e2e-plan","name":"functionapp-e2e-plan","type":"Microsoft.Web/serverfarms","kind":"app","location":"West
US","properties":{"serverFarmId":0,"name":"functionapp-e2e-plan","workerSize":"Small","workerSizeId":0,"workerTierName":null,"numberOfWorkers":1,"currentWorkerSize":"Small","currentWorkerSizeId":0,"currentNumberOfWorkers":1,"status":"Ready","webSpace":"azurecli-functionapp-e2e-WestUSwebspace","subscription":"b27cf603-5c35-4451-a33a-abba1a08c9c2","adminSiteName":null,"hostingEnvironment":null,"hostingEnvironmentProfile":null,"maximumNumberOfWorkers":3,"planName":"VirtualDedicatedPlan","adminRuntimeSiteName":null,"computeMode":"Shared","siteMode":null,"geoRegion":"West
US","perSiteScaling":false,"numberOfSites":0,"hostingEnvironmentId":null,"tags":null,"kind":"app","resourceGroup":"azurecli-functionapp-e2e","reserved":false,"mdmId":"waws-prod-bay-075_5373","targetWorkerCount":0,"targetWorkerSizeId":0,"provisioningState":"Succeeded"},"sku":{"name":"B1","tier":"Basic","size":"B1","family":"B","capacity":1}}'}
headers:
Cache-Control: [no-cache]
Content-Type: [application/json]
Date: ['Tue, 11 Apr 2017 21:02:39 GMT']
Expires: ['-1']
Pragma: [no-cache]
Server: [Microsoft-IIS/8.0]
Strict-Transport-Security: [max-age=31536000; includeSubDomains]
Transfer-Encoding: [chunked]
Vary: [Accept-Encoding]
X-AspNet-Version: [4.0.30319]
X-Powered-By: [ASP.NET]
content-length: ['1186']
x-ms-ratelimit-remaining-subscription-writes: ['1199']
status: {code: 200, message: OK}
- request:
body: null
headers:
Accept: [application/json]
Accept-Encoding: ['gzip, deflate']
Connection: [keep-alive]
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.2 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 websitemanagementclient/0.31.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.2+dev]
accept-language: [en-US]
x-ms-client-request-id: [339573e4-1efa-11e7-bf84-78acc0ad0877]
method: GET
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-e2e/providers/Microsoft.Web/serverfarms?api-version=2016-09-01
response:
body: {string: '{"value":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-e2e/providers/Microsoft.Web/serverfarms/functionapp-e2e-plan","name":"functionapp-e2e-plan","type":"Microsoft.Web/serverfarms","kind":"app","location":"West
US","properties":{"serverFarmId":0,"name":"functionapp-e2e-plan","workerSize":"Small","workerSizeId":0,"workerTierName":null,"numberOfWorkers":1,"currentWorkerSize":"Small","currentWorkerSizeId":0,"currentNumberOfWorkers":1,"status":"Ready","webSpace":"azurecli-functionapp-e2e-WestUSwebspace","subscription":"b27cf603-5c35-4451-a33a-abba1a08c9c2","adminSiteName":null,"hostingEnvironment":null,"hostingEnvironmentProfile":null,"maximumNumberOfWorkers":3,"planName":"VirtualDedicatedPlan","adminRuntimeSiteName":null,"computeMode":"Shared","siteMode":null,"geoRegion":"West
US","perSiteScaling":false,"numberOfSites":0,"hostingEnvironmentId":null,"tags":null,"kind":"app","resourceGroup":"azurecli-functionapp-e2e","reserved":false,"mdmId":"waws-prod-bay-075_5373","targetWorkerCount":0,"targetWorkerSizeId":0,"provisioningState":"Succeeded"},"sku":{"name":"B1","tier":"Basic","size":"B1","family":"B","capacity":1}}],"nextLink":null,"id":null}'}
headers:
Cache-Control: [no-cache]
Content-Type: [application/json]
Date: ['Tue, 11 Apr 2017 21:02:41 GMT']
Expires: ['-1']
Pragma: [no-cache]
Server: [Microsoft-IIS/8.0]
Strict-Transport-Security: [max-age=31536000; includeSubDomains]
Transfer-Encoding: [chunked]
Vary: [Accept-Encoding]
X-AspNet-Version: [4.0.30319]
X-Powered-By: [ASP.NET]
content-length: ['1224']
status: {code: 200, message: OK}
- request:
body: '{"sku": {"name": "Standard_LRS"}, "kind": "Storage", "location": "westus"}'
headers:
Accept: [application/json]
Accept-Encoding: ['gzip, deflate']
Connection: [keep-alive]
Content-Length: ['74']
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.2 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 storagemanagementclient/0.31.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.2+dev]
accept-language: [en-US]
x-ms-client-request-id: [34bd2226-1efa-11e7-889e-78acc0ad0877]
method: PUT
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-e2e/providers/Microsoft.Storage/storageAccounts/functionappplanstorage?api-version=2016-12-01
response:
body: {string: ''}
headers:
Cache-Control: [no-cache]
Content-Length: ['0']
Date: ['Tue, 11 Apr 2017 21:02:44 GMT']
Expires: ['-1']
Location: ['https://management.azure.com/subscriptions/b27cf603-5c35-4451-a33a-abba1a08c9c2/providers/Microsoft.Storage/operations/03b621a7-260d-464f-b466-af17a8dcf4f6?monitor=true&api-version=2016-12-01']
Pragma: [no-cache]
Retry-After: ['17']
Server: [Microsoft-Azure-Storage-Resource-Provider/1.0, Microsoft-HTTPAPI/2.0]
Strict-Transport-Security: [max-age=31536000; includeSubDomains]
x-ms-ratelimit-remaining-subscription-writes: ['1198']
status: {code: 202, message: Accepted}
- request:
body: null
headers:
Accept: [application/json]
Accept-Encoding: ['gzip, deflate']
Connection: [keep-alive]
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.2 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 storagemanagementclient/0.31.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.2+dev]
accept-language: [en-US]
x-ms-client-request-id: [34bd2226-1efa-11e7-889e-78acc0ad0877]
method: GET
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Storage/operations/03b621a7-260d-464f-b466-af17a8dcf4f6?monitor=true&api-version=2016-12-01
response:
body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-e2e/providers/Microsoft.Storage/storageAccounts/functionappplanstorage","kind":"Storage","location":"westus","name":"functionappplanstorage","properties":{"creationTime":"2017-04-11T21:02:44.4546990Z","primaryEndpoints":{"blob":"https://functionappplanstorage.blob.core.windows.net/","file":"https://functionappplanstorage.file.core.windows.net/","queue":"https://functionappplanstorage.queue.core.windows.net/","table":"https://functionappplanstorage.table.core.windows.net/"},"primaryLocation":"westus","provisioningState":"Succeeded","statusOfPrimary":"available","supportsHttpsTrafficOnly":false},"sku":{"name":"Standard_LRS","tier":"Standard"},"tags":{},"type":"Microsoft.Storage/storageAccounts"}
'}
headers:
Cache-Control: [no-cache]
Content-Type: [application/json]
Date: ['Tue, 11 Apr 2017 21:03:01 GMT']
Expires: ['-1']
Pragma: [no-cache]
Server: [Microsoft-Azure-Storage-Resource-Provider/1.0, Microsoft-HTTPAPI/2.0]
Strict-Transport-Security: [max-age=31536000; includeSubDomains]
Transfer-Encoding: [chunked]
Vary: [Accept-Encoding]
content-length: ['804']
status: {code: 200, message: OK}
- request:
body: null
headers:
Accept: [application/json]
Accept-Encoding: ['gzip, deflate']
Connection: [keep-alive]
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.2 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 websitemanagementclient/0.31.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.2+dev]
accept-language: [en-US]
x-ms-client-request-id: [4136ab7e-1efa-11e7-b45c-78acc0ad0877]
method: GET
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-e2e/providers/Microsoft.Web/serverfarms/functionapp-e2e-plan?api-version=2016-09-01
response:
body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-e2e/providers/Microsoft.Web/serverfarms/functionapp-e2e-plan","name":"functionapp-e2e-plan","type":"Microsoft.Web/serverfarms","kind":"app","location":"West
US","properties":{"serverFarmId":0,"name":"functionapp-e2e-plan","workerSize":"Small","workerSizeId":0,"workerTierName":null,"numberOfWorkers":1,"currentWorkerSize":"Small","currentWorkerSizeId":0,"currentNumberOfWorkers":1,"status":"Ready","webSpace":"azurecli-functionapp-e2e-WestUSwebspace","subscription":"b27cf603-5c35-4451-a33a-abba1a08c9c2","adminSiteName":null,"hostingEnvironment":null,"hostingEnvironmentProfile":null,"maximumNumberOfWorkers":3,"planName":"VirtualDedicatedPlan","adminRuntimeSiteName":null,"computeMode":"Shared","siteMode":null,"geoRegion":"West
US","perSiteScaling":false,"numberOfSites":0,"hostingEnvironmentId":null,"tags":null,"kind":"app","resourceGroup":"azurecli-functionapp-e2e","reserved":false,"mdmId":"waws-prod-bay-075_5373","targetWorkerCount":0,"targetWorkerSizeId":0,"provisioningState":"Succeeded"},"sku":{"name":"B1","tier":"Basic","size":"B1","family":"B","capacity":1}}'}
headers:
Cache-Control: [no-cache]
Content-Type: [application/json]
Date: ['Tue, 11 Apr 2017 21:03:04 GMT']
Expires: ['-1']
Pragma: [no-cache]
Server: [Microsoft-IIS/8.0]
Strict-Transport-Security: [max-age=31536000; includeSubDomains]
Transfer-Encoding: [chunked]
Vary: [Accept-Encoding]
X-AspNet-Version: [4.0.30319]
X-Powered-By: [ASP.NET]
content-length: ['1186']
status: {code: 200, message: OK}
- request:
body: null
headers:
Accept: [application/json]
Accept-Encoding: ['gzip, deflate']
Connection: [keep-alive]
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.2 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 storagemanagementclient/0.31.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.2+dev]
accept-language: [en-US]
x-ms-client-request-id: [41b79f12-1efa-11e7-90f7-78acc0ad0877]
method: GET
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-e2e/providers/Microsoft.Storage/storageAccounts/functionappplanstorage?api-version=2016-12-01
response:
body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-e2e/providers/Microsoft.Storage/storageAccounts/functionappplanstorage","kind":"Storage","location":"westus","name":"functionappplanstorage","properties":{"creationTime":"2017-04-11T21:02:44.4546990Z","primaryEndpoints":{"blob":"https://functionappplanstorage.blob.core.windows.net/","file":"https://functionappplanstorage.file.core.windows.net/","queue":"https://functionappplanstorage.queue.core.windows.net/","table":"https://functionappplanstorage.table.core.windows.net/"},"primaryLocation":"westus","provisioningState":"Succeeded","statusOfPrimary":"available","supportsHttpsTrafficOnly":false},"sku":{"name":"Standard_LRS","tier":"Standard"},"tags":{},"type":"Microsoft.Storage/storageAccounts"}
'}
headers:
Cache-Control: [no-cache]
Content-Type: [application/json]
Date: ['Tue, 11 Apr 2017 21:03:04 GMT']
Expires: ['-1']
Pragma: [no-cache]
Server: [Microsoft-Azure-Storage-Resource-Provider/1.0, Microsoft-HTTPAPI/2.0]
Strict-Transport-Security: [max-age=31536000; includeSubDomains]
Transfer-Encoding: [chunked]
Vary: [Accept-Encoding]
content-length: ['804']
status: {code: 200, message: OK}
- request:
body: null
headers:
Accept: [application/json]
Accept-Encoding: ['gzip, deflate']
Connection: [keep-alive]
Content-Length: ['0']
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.2 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 storagemanagementclient/0.31.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.2+dev]
accept-language: [en-US]
x-ms-client-request-id: [41d90bbe-1efa-11e7-8cad-78acc0ad0877]
method: POST
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-e2e/providers/Microsoft.Storage/storageAccounts/functionappplanstorage/listKeys?api-version=2016-12-01
response:
body: {string: '{"keys":[{"keyName":"key1","permissions":"Full","value":"Yf/ucbvzscmoWpa1CfDkTWa+F2XtRNvjjMsYeguFVmIrtQCCOIHMSCebwOddCwaeiPN3SvfiSdwHxisgH4NBKA=="},{"keyName":"key2","permissions":"Full","value":"QMKFDYueI8W9R8kI8q4YJp7RxLkfzjo5OorRQ796Noc8QDUefWGn7RhBYlOWc725vLZTxdMHFZ8SDZrNubb4WA=="}]}
'}
headers:
Cache-Control: [no-cache]
Content-Type: [application/json]
Date: ['Tue, 11 Apr 2017 21:03:05 GMT']
Expires: ['-1']
Pragma: [no-cache]
Server: [Microsoft-Azure-Storage-Resource-Provider/1.0, Microsoft-HTTPAPI/2.0]
Strict-Transport-Security: [max-age=31536000; includeSubDomains]
Transfer-Encoding: [chunked]
Vary: [Accept-Encoding]
content-length: ['289']
x-ms-ratelimit-remaining-subscription-writes: ['1199']
status: {code: 200, message: OK}
- request:
body: '{"kind": "functionapp", "properties": {"reserved": false, "serverFarmId":
"functionapp-e2e-plan", "microService": "false", "scmSiteAlsoStopped": false},
"location": "West US"}'
headers:
Accept: [application/json]
Accept-Encoding: ['gzip, deflate']
Connection: [keep-alive]
Content-Length: ['175']
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.2 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 websitemanagementclient/0.31.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.2+dev]
accept-language: [en-US]
x-ms-client-request-id: [4231f012-1efa-11e7-97c8-78acc0ad0877]
method: PUT
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-e2e/providers/Microsoft.Web/sites/functionapp-e2e3?api-version=2016-08-01
response:
body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-e2e/providers/Microsoft.Web/sites/functionapp-e2e3","name":"functionapp-e2e3","type":"Microsoft.Web/sites","kind":"functionapp","location":"West
US","properties":{"name":"functionapp-e2e3","state":"Running","hostNames":["functionapp-e2e3.azurewebsites.net"],"webSpace":"azurecli-functionapp-e2e-WestUSwebspace","selfLink":"https://waws-prod-bay-075.api.azurewebsites.windows.net:454/subscriptions/00000000-0000-0000-0000-000000000000/webspaces/azurecli-functionapp-e2e-WestUSwebspace/sites/functionapp-e2e3","repositorySiteName":"functionapp-e2e3","owner":null,"usageState":"Normal","enabled":true,"adminEnabled":true,"enabledHostNames":["functionapp-e2e3.azurewebsites.net","functionapp-e2e3.scm.azurewebsites.net"],"siteProperties":{"metadata":null,"properties":[],"appSettings":null},"availabilityState":"Normal","sslCertificates":null,"csrs":[],"cers":null,"siteMode":null,"hostNameSslStates":[{"name":"functionapp-e2e3.azurewebsites.net","sslState":"Disabled","ipBasedSslResult":null,"virtualIP":null,"thumbprint":null,"toUpdate":null,"toUpdateIpBasedSsl":null,"ipBasedSslState":"NotConfigured","hostType":"Standard"},{"name":"functionapp-e2e3.scm.azurewebsites.net","sslState":"Disabled","ipBasedSslResult":null,"virtualIP":null,"thumbprint":null,"toUpdate":null,"toUpdateIpBasedSsl":null,"ipBasedSslState":"NotConfigured","hostType":"Repository"}],"computeMode":null,"serverFarm":null,"serverFarmId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-e2e/providers/Microsoft.Web/serverfarms/functionapp-e2e-plan","reserved":false,"lastModifiedTimeUtc":"2017-04-11T21:03:06.4133333","storageRecoveryDefaultState":"Running","contentAvailabilityState":"Normal","runtimeAvailabilityState":"Normal","siteConfig":null,"deploymentId":"functionapp-e2e3","trafficManagerHostNames":null,"sku":"Basic","premiumAppDeployed":null,"scmSiteAlsoStopped":false,"targetSwapSlot":null,"hostingEnvironment":null,"hostingEnvironmentProfile":null,"microService":"false","gatewaySiteName":null,"clientAffinityEnabled":true,"clientCertEnabled":false,"hostNamesDisabled":false,"domainVerificationIdentifiers":null,"kind":"functionapp","outboundIpAddresses":"104.40.3.53,104.40.18.224,104.40.21.79,104.40.21.56,104.40.23.196","containerSize":1536,"dailyMemoryTimeQuota":0,"suspendedTill":null,"siteDisabledReason":0,"functionExecutionUnitsCache":null,"maxNumberOfWorkers":null,"homeStamp":"waws-prod-bay-075","cloningInfo":null,"hostingEnvironmentId":null,"tags":null,"resourceGroup":"azurecli-functionapp-e2e","defaultHostName":"functionapp-e2e3.azurewebsites.net","slotSwapStatus":null}}'}
headers:
Cache-Control: [no-cache]
Content-Type: [application/json]
Date: ['Tue, 11 Apr 2017 21:03:09 GMT']
ETag: ['"1D2B30704DAF34B"']
Expires: ['-1']
Pragma: [no-cache]
Server: [Microsoft-IIS/8.0]
Strict-Transport-Security: [max-age=31536000; includeSubDomains]
Transfer-Encoding: [chunked]
Vary: [Accept-Encoding]
X-AspNet-Version: [4.0.30319]
X-Powered-By: [ASP.NET]
content-length: ['2733']
x-ms-ratelimit-remaining-subscription-writes: ['1198']
status: {code: 200, message: OK}
- request:
body: null
headers:
Accept: [application/json]
Accept-Encoding: ['gzip, deflate']
Connection: [keep-alive]
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.2 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 websitemanagementclient/0.31.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.2+dev]
accept-language: [en-US]
x-ms-client-request-id: [4535747a-1efa-11e7-811d-78acc0ad0877]
method: GET
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-e2e/providers/Microsoft.Web/sites/functionapp-e2e3/config/web?api-version=2016-08-01
response:
body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-e2e/providers/Microsoft.Web/sites/functionapp-e2e3/config/web","name":"functionapp-e2e3","type":"Microsoft.Web/sites/config","location":"West
US","properties":{"numberOfWorkers":1,"defaultDocuments":["Default.htm","Default.html","Default.asp","index.htm","index.html","iisstart.htm","default.aspx","index.php","hostingstart.html"],"netFrameworkVersion":"v4.0","phpVersion":"5.6","pythonVersion":"","nodeVersion":"","linuxFxVersion":"","requestTracingEnabled":false,"remoteDebuggingEnabled":false,"remoteDebuggingVersion":null,"httpLoggingEnabled":false,"logsDirectorySizeLimit":35,"detailedErrorLoggingEnabled":false,"publishingUsername":"$functionapp-e2e3","publishingPassword":null,"appSettings":null,"metadata":null,"connectionStrings":null,"machineKey":null,"handlerMappings":null,"documentRoot":null,"scmType":"None","use32BitWorkerProcess":true,"webSocketsEnabled":false,"alwaysOn":false,"javaVersion":null,"javaContainer":null,"javaContainerVersion":null,"appCommandLine":"","managedPipelineMode":"Integrated","virtualApplications":[{"virtualPath":"/","physicalPath":"site\\wwwroot","preloadEnabled":false,"virtualDirectories":null}],"winAuthAdminState":0,"winAuthTenantState":0,"customAppPoolIdentityAdminState":false,"customAppPoolIdentityTenantState":false,"runtimeADUser":null,"runtimeADUserPassword":null,"loadBalancing":"LeastRequests","routingRules":[],"experiments":{"rampUpRules":[]},"limits":null,"autoHealEnabled":false,"autoHealRules":{"triggers":null,"actions":null},"tracingOptions":null,"vnetName":"","siteAuthEnabled":false,"siteAuthSettings":{"enabled":null,"unauthenticatedClientAction":null,"tokenStoreEnabled":null,"allowedExternalRedirectUrls":null,"defaultProvider":null,"clientId":null,"clientSecret":null,"issuer":null,"allowedAudiences":null,"additionalLoginParams":null,"isAadAutoProvisioned":false,"googleClientId":null,"googleClientSecret":null,"googleOAuthScopes":null,"facebookAppId":null,"facebookAppSecret":null,"facebookOAuthScopes":null,"twitterConsumerKey":null,"twitterConsumerSecret":null,"microsoftAccountClientId":null,"microsoftAccountClientSecret":null,"microsoftAccountOAuthScopes":null},"cors":{"allowedOrigins":["https://functions.azure.com","https://functions-staging.azure.com","https://functions-next.azure.com"]},"push":null,"apiDefinition":null,"autoSwapSlotName":null,"localMySqlEnabled":false,"ipSecurityRestrictions":null}}'}
headers:
Cache-Control: [no-cache]
Content-Type: [application/json]
Date: ['Tue, 11 Apr 2017 21:03:10 GMT']
Expires: ['-1']
Pragma: [no-cache]
Server: [Microsoft-IIS/8.0]
Strict-Transport-Security: [max-age=31536000; includeSubDomains]
Transfer-Encoding: [chunked]
Vary: [Accept-Encoding]
X-AspNet-Version: [4.0.30319]
X-Powered-By: [ASP.NET]
content-length: ['2483']
status: {code: 200, message: OK}
- request:
body: '{"name": "functionapp-e2e3", "type": "Microsoft.Web/sites/config", "properties":
{"appCommandLine": "", "cors": {"allowedOrigins": ["https://functions.azure.com",
"https://functions-staging.azure.com", "https://functions-next.azure.com"]},
"remoteDebuggingEnabled": false, "autoHealRules": {}, "publishingUsername":
"$functionapp-e2e3", "experiments": {"rampUpRules": []}, "detailedErrorLoggingEnabled":
false, "localMySqlEnabled": false, "loadBalancing": "LeastRequests", "requestTracingEnabled":
false, "nodeVersion": "", "scmType": "None", "alwaysOn": true, "managedPipelineMode":
"Integrated", "autoHealEnabled": false, "linuxFxVersion": "", "webSocketsEnabled":
false, "netFrameworkVersion": "v4.0", "phpVersion": "5.6", "pythonVersion":
"", "httpLoggingEnabled": false, "virtualApplications": [{"preloadEnabled":
false, "virtualPath": "/", "physicalPath": "site\\wwwroot"}], "logsDirectorySizeLimit":
35, "vnetName": "", "use32BitWorkerProcess": true, "defaultDocuments": ["Default.htm",
"Default.html", "Default.asp", "index.htm", "index.html", "iisstart.htm", "default.aspx",
"index.php", "hostingstart.html"], "numberOfWorkers": 1}, "location": "West
US"}'
headers:
Accept: [application/json]
Accept-Encoding: ['gzip, deflate']
Connection: [keep-alive]
Content-Length: ['1164']
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.2 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 websitemanagementclient/0.31.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.2+dev]
accept-language: [en-US]
x-ms-client-request-id: [45638bb0-1efa-11e7-ad8b-78acc0ad0877]
method: PATCH
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-e2e/providers/Microsoft.Web/sites/functionapp-e2e3/config/web?api-version=2016-08-01
response:
body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-e2e/providers/Microsoft.Web/sites/functionapp-e2e3","name":"functionapp-e2e3","type":"Microsoft.Web/sites","location":"West
US","properties":{"numberOfWorkers":1,"defaultDocuments":["Default.htm","Default.html","Default.asp","index.htm","index.html","iisstart.htm","default.aspx","index.php","hostingstart.html"],"netFrameworkVersion":"v4.0","phpVersion":"5.6","pythonVersion":"","nodeVersion":"","linuxFxVersion":"","requestTracingEnabled":false,"remoteDebuggingEnabled":false,"remoteDebuggingVersion":"VS2012","httpLoggingEnabled":false,"logsDirectorySizeLimit":35,"detailedErrorLoggingEnabled":false,"publishingUsername":"$functionapp-e2e3","publishingPassword":null,"appSettings":null,"metadata":null,"connectionStrings":null,"machineKey":null,"handlerMappings":null,"documentRoot":null,"scmType":"None","use32BitWorkerProcess":true,"webSocketsEnabled":false,"alwaysOn":true,"javaVersion":null,"javaContainer":null,"javaContainerVersion":null,"appCommandLine":"","managedPipelineMode":"Integrated","virtualApplications":[{"virtualPath":"/","physicalPath":"site\\wwwroot","preloadEnabled":true,"virtualDirectories":null}],"winAuthAdminState":0,"winAuthTenantState":0,"customAppPoolIdentityAdminState":false,"customAppPoolIdentityTenantState":false,"runtimeADUser":null,"runtimeADUserPassword":null,"loadBalancing":"LeastRequests","routingRules":[],"experiments":{"rampUpRules":[]},"limits":null,"autoHealEnabled":false,"autoHealRules":{"triggers":null,"actions":null},"tracingOptions":null,"vnetName":"","siteAuthEnabled":false,"siteAuthSettings":{"enabled":null,"unauthenticatedClientAction":null,"tokenStoreEnabled":null,"allowedExternalRedirectUrls":null,"defaultProvider":null,"clientId":null,"clientSecret":null,"issuer":null,"allowedAudiences":null,"additionalLoginParams":null,"isAadAutoProvisioned":false,"googleClientId":null,"googleClientSecret":null,"googleOAuthScopes":null,"facebookAppId":null,"facebookAppSecret":null,"facebookOAuthScopes":null,"twitterConsumerKey":null,"twitterConsumerSecret":null,"microsoftAccountClientId":null,"microsoftAccountClientSecret":null,"microsoftAccountOAuthScopes":null},"cors":{"allowedOrigins":["https://functions.azure.com","https://functions-staging.azure.com","https://functions-next.azure.com"]},"push":null,"apiDefinition":null,"autoSwapSlotName":null,"localMySqlEnabled":false,"ipSecurityRestrictions":null}}'}
headers:
Cache-Control: [no-cache]
Content-Type: [application/json]
Date: ['Tue, 11 Apr 2017 21:03:12 GMT']
ETag: ['"1D2B3070720D1A0"']
Expires: ['-1']
Pragma: [no-cache]
Server: [Microsoft-IIS/8.0]
Strict-Transport-Security: [max-age=31536000; includeSubDomains]
Transfer-Encoding: [chunked]
Vary: [Accept-Encoding]
X-AspNet-Version: [4.0.30319]
X-Powered-By: [ASP.NET]
content-length: ['2467']
x-ms-ratelimit-remaining-subscription-writes: ['1199']
status: {code: 200, message: OK}
- request:
body: null
headers:
Accept: [application/json]
Accept-Encoding: ['gzip, deflate']
Connection: [keep-alive]
Content-Length: ['0']
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.2 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 websitemanagementclient/0.31.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.2+dev]
accept-language: [en-US]
x-ms-client-request-id: [46a1edb4-1efa-11e7-8ff3-78acc0ad0877]
method: POST
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-e2e/providers/Microsoft.Web/sites/functionapp-e2e3/config/appsettings/list?api-version=2016-08-01
response:
body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-e2e/providers/Microsoft.Web/sites/functionapp-e2e3/config/appsettings","name":"appsettings","type":"Microsoft.Web/sites/config","location":"West
US","properties":{"FUNCTIONS_EXTENSION_VERSION":"~1"}}'}
headers:
Cache-Control: [no-cache]
Content-Type: [application/json]
Date: ['Tue, 11 Apr 2017 21:03:13 GMT']
Expires: ['-1']
Pragma: [no-cache]
Server: [Microsoft-IIS/8.0]
Strict-Transport-Security: [max-age=31536000; includeSubDomains]
Transfer-Encoding: [chunked]
Vary: [Accept-Encoding]
X-AspNet-Version: [4.0.30319]
X-Powered-By: [ASP.NET]
content-length: ['300']
x-ms-ratelimit-remaining-subscription-resource-requests: ['11999']
status: {code: 200, message: OK}
- request:
body: '{"name": "appsettings", "type": "Microsoft.Web/sites/config", "properties":
{"WEBSITE_NODE_DEFAULT_VERSION": "6.5.0", "AzureWebJobsDashboard": "DefaultEndpointsProtocol=https;AccountName=functionappplanstorage;AccountKey=Yf/ucbvzscmoWpa1CfDkTWa+F2XtRNvjjMsYeguFVmIrtQCCOIHMSCebwOddCwaeiPN3SvfiSdwHxisgH4NBKA==",
"AzureWebJobsStorage": "DefaultEndpointsProtocol=https;AccountName=functionappplanstorage;AccountKey=Yf/ucbvzscmoWpa1CfDkTWa+F2XtRNvjjMsYeguFVmIrtQCCOIHMSCebwOddCwaeiPN3SvfiSdwHxisgH4NBKA==",
"FUNCTIONS_EXTENSION_VERSION": "~1"}, "location": "West US"}'
headers:
Accept: [application/json]
Accept-Encoding: ['gzip, deflate']
Connection: [keep-alive]
Content-Length: ['564']
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.2 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 websitemanagementclient/0.31.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.2+dev]
accept-language: [en-US]
x-ms-client-request-id: [47697890-1efa-11e7-b46e-78acc0ad0877]
method: PUT
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-e2e/providers/Microsoft.Web/sites/functionapp-e2e3/config/appsettings?api-version=2016-08-01
response:
body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-e2e/providers/Microsoft.Web/sites/functionapp-e2e3/config/appsettings","name":"appsettings","type":"Microsoft.Web/sites/config","location":"West
US","properties":{"WEBSITE_NODE_DEFAULT_VERSION":"6.5.0","AzureWebJobsDashboard":"DefaultEndpointsProtocol=https;AccountName=functionappplanstorage;AccountKey=Yf/ucbvzscmoWpa1CfDkTWa+F2XtRNvjjMsYeguFVmIrtQCCOIHMSCebwOddCwaeiPN3SvfiSdwHxisgH4NBKA==","AzureWebJobsStorage":"DefaultEndpointsProtocol=https;AccountName=functionappplanstorage;AccountKey=Yf/ucbvzscmoWpa1CfDkTWa+F2XtRNvjjMsYeguFVmIrtQCCOIHMSCebwOddCwaeiPN3SvfiSdwHxisgH4NBKA==","FUNCTIONS_EXTENSION_VERSION":"~1"}}'}
headers:
Cache-Control: [no-cache]
Content-Type: [application/json]
Date: ['Tue, 11 Apr 2017 21:03:14 GMT']
ETag: ['"1D2B30708A771A0"']
Expires: ['-1']
Pragma: [no-cache]
Server: [Microsoft-IIS/8.0]
Strict-Transport-Security: [max-age=31536000; includeSubDomains]
Transfer-Encoding: [chunked]
Vary: [Accept-Encoding]
X-AspNet-Version: [4.0.30319]
X-Powered-By: [ASP.NET]
content-length: ['721']
x-ms-ratelimit-remaining-subscription-writes: ['1197']
status: {code: 200, message: OK}
- request:
body: null
headers:
Accept: [application/json]
Accept-Encoding: ['gzip, deflate']
Connection: [keep-alive]
Content-Length: ['0']
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.2 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 websitemanagementclient/0.31.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.2+dev]
accept-language: [en-US]
x-ms-client-request-id: [48a40d62-1efa-11e7-a951-78acc0ad0877]
method: DELETE
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-e2e/providers/Microsoft.Web/sites/functionapp-e2e3?api-version=2016-08-01
response:
body: {string: ''}
headers:
Cache-Control: [no-cache]
Content-Length: ['0']
Date: ['Tue, 11 Apr 2017 21:03:20 GMT']
ETag: ['"1D2B30708A771A0"']
Expires: ['-1']
Pragma: [no-cache]
Server: [Microsoft-IIS/8.0]
Strict-Transport-Security: [max-age=31536000; includeSubDomains]
X-AspNet-Version: [4.0.30319]
X-Powered-By: [ASP.NET]
x-ms-ratelimit-remaining-subscription-writes: ['1199']
status: {code: 200, message: OK}
version: 1

Просмотреть файл

@ -0,0 +1,357 @@
interactions:
- request:
body: '{"kind": "Storage", "location": "westus", "sku": {"name": "Standard_LRS"}}'
headers:
Accept: [application/json]
Accept-Encoding: ['gzip, deflate']
Connection: [keep-alive]
Content-Length: ['74']
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.2 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 storagemanagementclient/0.31.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.2+dev]
accept-language: [en-US]
x-ms-client-request-id: [44ce805c-1efb-11e7-bd20-78acc0ad0877]
method: PUT
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-c-e2e/providers/Microsoft.Storage/storageAccounts/functionaconstorage?api-version=2016-12-01
response:
body: {string: ''}
headers:
Cache-Control: [no-cache]
Content-Length: ['0']
Date: ['Tue, 11 Apr 2017 21:10:20 GMT']
Expires: ['-1']
Location: ['https://management.azure.com/subscriptions/b27cf603-5c35-4451-a33a-abba1a08c9c2/providers/Microsoft.Storage/operations/85ad0093-3f75-44a2-8018-2d00f0248e9a?monitor=true&api-version=2016-12-01']
Pragma: [no-cache]
Retry-After: ['17']
Server: [Microsoft-Azure-Storage-Resource-Provider/1.0, Microsoft-HTTPAPI/2.0]
Strict-Transport-Security: [max-age=31536000; includeSubDomains]
x-ms-ratelimit-remaining-subscription-writes: ['1199']
status: {code: 202, message: Accepted}
- request:
body: null
headers:
Accept: [application/json]
Accept-Encoding: ['gzip, deflate']
Connection: [keep-alive]
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.2 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 storagemanagementclient/0.31.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.2+dev]
accept-language: [en-US]
x-ms-client-request-id: [44ce805c-1efb-11e7-bd20-78acc0ad0877]
method: GET
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Storage/operations/85ad0093-3f75-44a2-8018-2d00f0248e9a?monitor=true&api-version=2016-12-01
response:
body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-c-e2e/providers/Microsoft.Storage/storageAccounts/functionaconstorage","kind":"Storage","location":"westus","name":"functionaconstorage","properties":{"creationTime":"2017-04-11T21:10:20.8055470Z","primaryEndpoints":{"blob":"https://functionaconstorage.blob.core.windows.net/","file":"https://functionaconstorage.file.core.windows.net/","queue":"https://functionaconstorage.queue.core.windows.net/","table":"https://functionaconstorage.table.core.windows.net/"},"primaryLocation":"westus","provisioningState":"Succeeded","statusOfPrimary":"available","supportsHttpsTrafficOnly":false},"sku":{"name":"Standard_LRS","tier":"Standard"},"tags":{},"type":"Microsoft.Storage/storageAccounts"}
'}
headers:
Cache-Control: [no-cache]
Content-Type: [application/json]
Date: ['Tue, 11 Apr 2017 21:10:38 GMT']
Expires: ['-1']
Pragma: [no-cache]
Server: [Microsoft-Azure-Storage-Resource-Provider/1.0, Microsoft-HTTPAPI/2.0]
Strict-Transport-Security: [max-age=31536000; includeSubDomains]
Transfer-Encoding: [chunked]
Vary: [Accept-Encoding]
content-length: ['788']
status: {code: 200, message: OK}
- request:
body: null
headers:
Accept: [application/json]
Accept-Encoding: ['gzip, deflate']
Connection: [keep-alive]
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.2 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 websitemanagementclient/0.31.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.2+dev]
accept-language: [en-US]
x-ms-client-request-id: [50acbe4a-1efb-11e7-948b-78acc0ad0877]
method: GET
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Web/geoRegions?api-version=2016-03-01&sku=Dynamic
response:
body: {string: '{"value":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Web/geoRegions/South
Central US","name":"South Central US","type":"Microsoft.Web/geoRegions","properties":{"name":"South
Central US","description":null,"sortOrder":0,"displayName":"South Central
US"}},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Web/geoRegions/North
Europe","name":"North Europe","type":"Microsoft.Web/geoRegions","properties":{"name":"North
Europe","description":null,"sortOrder":1,"displayName":"North Europe"}},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Web/geoRegions/West
Europe","name":"West Europe","type":"Microsoft.Web/geoRegions","properties":{"name":"West
Europe","description":null,"sortOrder":2,"displayName":"West Europe"}},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Web/geoRegions/Southeast
Asia","name":"Southeast Asia","type":"Microsoft.Web/geoRegions","properties":{"name":"Southeast
Asia","description":null,"sortOrder":3,"displayName":"Southeast Asia"}},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Web/geoRegions/East
Asia","name":"East Asia","type":"Microsoft.Web/geoRegions","properties":{"name":"East
Asia","description":null,"sortOrder":4,"displayName":"East Asia"}},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Web/geoRegions/West
US","name":"West US","type":"Microsoft.Web/geoRegions","properties":{"name":"West
US","description":null,"sortOrder":5,"displayName":"West US"}},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Web/geoRegions/East
US","name":"East US","type":"Microsoft.Web/geoRegions","properties":{"name":"East
US","description":null,"sortOrder":6,"displayName":"East US"}},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Web/geoRegions/Japan
West","name":"Japan West","type":"Microsoft.Web/geoRegions","properties":{"name":"Japan
West","description":null,"sortOrder":7,"displayName":"Japan West"}},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Web/geoRegions/Japan
East","name":"Japan East","type":"Microsoft.Web/geoRegions","properties":{"name":"Japan
East","description":null,"sortOrder":8,"displayName":"Japan East"}},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Web/geoRegions/East
US 2","name":"East US 2","type":"Microsoft.Web/geoRegions","properties":{"name":"East
US 2","description":null,"sortOrder":9,"displayName":"East US 2"}},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Web/geoRegions/North
Central US","name":"North Central US","type":"Microsoft.Web/geoRegions","properties":{"name":"North
Central US","description":null,"sortOrder":10,"displayName":"North Central
US"}},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Web/geoRegions/Central
US","name":"Central US","type":"Microsoft.Web/geoRegions","properties":{"name":"Central
US","description":null,"sortOrder":11,"displayName":"Central US"}},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Web/geoRegions/Brazil
South","name":"Brazil South","type":"Microsoft.Web/geoRegions","properties":{"name":"Brazil
South","description":null,"sortOrder":12,"displayName":"Brazil South"}},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Web/geoRegions/Australia
East","name":"Australia East","type":"Microsoft.Web/geoRegions","properties":{"name":"Australia
East","description":null,"sortOrder":13,"displayName":"Australia East"}},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Web/geoRegions/Australia
Southeast","name":"Australia Southeast","type":"Microsoft.Web/geoRegions","properties":{"name":"Australia
Southeast","description":null,"sortOrder":14,"displayName":"Australia Southeast"}},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Web/geoRegions/South
India","name":"South India","type":"Microsoft.Web/geoRegions","properties":{"name":"South
India","description":null,"sortOrder":2147483647,"displayName":"South India"}},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Web/geoRegions/Canada
Central","name":"Canada Central","type":"Microsoft.Web/geoRegions","properties":{"name":"Canada
Central","description":null,"sortOrder":2147483647,"displayName":"Canada Central"}},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Web/geoRegions/West
US 2","name":"West US 2","type":"Microsoft.Web/geoRegions","properties":{"name":"West
US 2","description":null,"sortOrder":2147483647,"displayName":"West US 2"}},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Web/geoRegions/UK
South","name":"UK South","type":"Microsoft.Web/geoRegions","properties":{"name":"UK
South","description":null,"sortOrder":2147483647,"displayName":"UK South"}}],"nextLink":null,"id":null}'}
headers:
Cache-Control: [no-cache]
Content-Type: [application/json]
Date: ['Tue, 11 Apr 2017 21:10:39 GMT']
Expires: ['-1']
Pragma: [no-cache]
Server: [Microsoft-IIS/8.0]
Strict-Transport-Security: [max-age=31536000; includeSubDomains]
Transfer-Encoding: [chunked]
Vary: [Accept-Encoding]
X-AspNet-Version: [4.0.30319]
X-Powered-By: [ASP.NET]
content-length: ['5054']
status: {code: 200, message: OK}
- request:
body: null
headers:
Accept: [application/json]
Accept-Encoding: ['gzip, deflate']
Connection: [keep-alive]
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.2 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 storagemanagementclient/0.31.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.2+dev]
accept-language: [en-US]
x-ms-client-request-id: [510cbbbe-1efb-11e7-93c4-78acc0ad0877]
method: GET
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-c-e2e/providers/Microsoft.Storage/storageAccounts/functionaconstorage?api-version=2016-12-01
response:
body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-c-e2e/providers/Microsoft.Storage/storageAccounts/functionaconstorage","kind":"Storage","location":"westus","name":"functionaconstorage","properties":{"creationTime":"2017-04-11T21:10:20.8055470Z","primaryEndpoints":{"blob":"https://functionaconstorage.blob.core.windows.net/","file":"https://functionaconstorage.file.core.windows.net/","queue":"https://functionaconstorage.queue.core.windows.net/","table":"https://functionaconstorage.table.core.windows.net/"},"primaryLocation":"westus","provisioningState":"Succeeded","statusOfPrimary":"available","supportsHttpsTrafficOnly":false},"sku":{"name":"Standard_LRS","tier":"Standard"},"tags":{},"type":"Microsoft.Storage/storageAccounts"}
'}
headers:
Cache-Control: [no-cache]
Content-Type: [application/json]
Date: ['Tue, 11 Apr 2017 21:10:40 GMT']
Expires: ['-1']
Pragma: [no-cache]
Server: [Microsoft-Azure-Storage-Resource-Provider/1.0, Microsoft-HTTPAPI/2.0]
Strict-Transport-Security: [max-age=31536000; includeSubDomains]
Transfer-Encoding: [chunked]
Vary: [Accept-Encoding]
content-length: ['788']
status: {code: 200, message: OK}
- request:
body: null
headers:
Accept: [application/json]
Accept-Encoding: ['gzip, deflate']
Connection: [keep-alive]
Content-Length: ['0']
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.2 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 storagemanagementclient/0.31.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.2+dev]
accept-language: [en-US]
x-ms-client-request-id: [516df212-1efb-11e7-93c2-78acc0ad0877]
method: POST
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-c-e2e/providers/Microsoft.Storage/storageAccounts/functionaconstorage/listKeys?api-version=2016-12-01
response:
body: {string: '{"keys":[{"keyName":"key1","permissions":"Full","value":"+su3dZsT+f1LyislP808QIOLY9hE35PlZ/5GGdOalZKYPKOG0U3Hn1+LWkp3FkJX14PJsuM1Il/B37wrjlxaSg=="},{"keyName":"key2","permissions":"Full","value":"CW3jIas3sYuo0g3z8snaiz13mBBfFqmrKGHonkMdo2Bf34UXZyIRruIja5FtJSERlNgvwHydIVOD22Qj2OY0JQ=="}]}
'}
headers:
Cache-Control: [no-cache]
Content-Type: [application/json]
Date: ['Tue, 11 Apr 2017 21:10:41 GMT']
Expires: ['-1']
Pragma: [no-cache]
Server: [Microsoft-Azure-Storage-Resource-Provider/1.0, Microsoft-HTTPAPI/2.0]
Strict-Transport-Security: [max-age=31536000; includeSubDomains]
Transfer-Encoding: [chunked]
Vary: [Accept-Encoding]
content-length: ['289']
x-ms-ratelimit-remaining-subscription-writes: ['1194']
status: {code: 200, message: OK}
- request:
body: '{"kind": "functionapp", "location": "westus", "properties": {"scmSiteAlsoStopped":
false, "reserved": false, "microService": "false"}}'
headers:
Accept: [application/json]
Accept-Encoding: ['gzip, deflate']
Connection: [keep-alive]
Content-Length: ['134']
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.2 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 websitemanagementclient/0.31.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.2+dev]
accept-language: [en-US]
x-ms-client-request-id: [51d47fca-1efb-11e7-afa5-78acc0ad0877]
method: PUT
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-c-e2e/providers/Microsoft.Web/sites/functionappconsumption?api-version=2016-08-01
response:
body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-c-e2e/providers/Microsoft.Web/sites/functionappconsumption","name":"functionappconsumption","type":"Microsoft.Web/sites","kind":"functionapp","location":"westus","properties":{"name":"functionappconsumption","state":"Running","hostNames":["functionappconsumption.azurewebsites.net"],"webSpace":"azurecli-functionapp-c-e2e-WestUSwebspace","selfLink":"https://waws-prod-bay-039.api.azurewebsites.windows.net:454/subscriptions/00000000-0000-0000-0000-000000000000/webspaces/azurecli-functionapp-c-e2e-WestUSwebspace/sites/functionappconsumption","repositorySiteName":"functionappconsumption","owner":null,"usageState":"Normal","enabled":true,"adminEnabled":true,"enabledHostNames":["functionappconsumption.azurewebsites.net","functionappconsumption.scm.azurewebsites.net"],"siteProperties":{"metadata":null,"properties":[],"appSettings":null},"availabilityState":"Normal","sslCertificates":null,"csrs":[],"cers":null,"siteMode":null,"hostNameSslStates":[{"name":"functionappconsumption.azurewebsites.net","sslState":"Disabled","ipBasedSslResult":null,"virtualIP":null,"thumbprint":null,"toUpdate":null,"toUpdateIpBasedSsl":null,"ipBasedSslState":"NotConfigured","hostType":"Standard"},{"name":"functionappconsumption.scm.azurewebsites.net","sslState":"Disabled","ipBasedSslResult":null,"virtualIP":null,"thumbprint":null,"toUpdate":null,"toUpdateIpBasedSsl":null,"ipBasedSslState":"NotConfigured","hostType":"Repository"}],"computeMode":null,"serverFarm":null,"serverFarmId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-c-e2e/providers/Microsoft.Web/serverfarms/WestUSPlan","reserved":false,"lastModifiedTimeUtc":"2017-04-11T21:10:47.063","storageRecoveryDefaultState":"Running","contentAvailabilityState":"Normal","runtimeAvailabilityState":"Normal","siteConfig":null,"deploymentId":"functionappconsumption","trafficManagerHostNames":null,"sku":"Dynamic","premiumAppDeployed":null,"scmSiteAlsoStopped":false,"targetSwapSlot":null,"hostingEnvironment":null,"hostingEnvironmentProfile":null,"microService":"false","gatewaySiteName":null,"clientAffinityEnabled":true,"clientCertEnabled":false,"hostNamesDisabled":false,"domainVerificationIdentifiers":null,"kind":"functionapp","outboundIpAddresses":"104.42.225.41,104.42.224.45,104.42.225.216,104.42.230.71","containerSize":1536,"dailyMemoryTimeQuota":0,"suspendedTill":null,"siteDisabledReason":0,"functionExecutionUnitsCache":null,"maxNumberOfWorkers":null,"homeStamp":"waws-prod-bay-039","cloningInfo":null,"hostingEnvironmentId":null,"tags":null,"resourceGroup":"azurecli-functionapp-c-e2e","defaultHostName":"functionappconsumption.azurewebsites.net","slotSwapStatus":null}}'}
headers:
Cache-Control: [no-cache]
Content-Type: [application/json]
Date: ['Tue, 11 Apr 2017 21:10:57 GMT']
ETag: ['"1D2B308171491E0"']
Expires: ['-1']
Pragma: [no-cache]
Server: [Microsoft-IIS/8.0]
Strict-Transport-Security: [max-age=31536000; includeSubDomains]
Transfer-Encoding: [chunked]
Vary: [Accept-Encoding]
X-AspNet-Version: [4.0.30319]
X-Powered-By: [ASP.NET]
content-length: ['2793']
x-ms-ratelimit-remaining-subscription-writes: ['1198']
status: {code: 200, message: OK}
- request:
body: null
headers:
Accept: [application/json]
Accept-Encoding: ['gzip, deflate']
Connection: [keep-alive]
Content-Length: ['0']
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.2 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 websitemanagementclient/0.31.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.2+dev]
accept-language: [en-US]
x-ms-client-request-id: [5bfb7686-1efb-11e7-83d5-78acc0ad0877]
method: POST
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-c-e2e/providers/Microsoft.Web/sites/functionappconsumption/config/appsettings/list?api-version=2016-08-01
response:
body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-c-e2e/providers/Microsoft.Web/sites/functionappconsumption/config/appsettings","name":"appsettings","type":"Microsoft.Web/sites/config","location":"West
US","properties":{"FUNCTIONS_EXTENSION_VERSION":"~1"}}'}
headers:
Cache-Control: [no-cache]
Content-Type: [application/json]
Date: ['Tue, 11 Apr 2017 21:10:58 GMT']
Expires: ['-1']
Pragma: [no-cache]
Server: [Microsoft-IIS/8.0]
Strict-Transport-Security: [max-age=31536000; includeSubDomains]
Transfer-Encoding: [chunked]
Vary: [Accept-Encoding]
X-AspNet-Version: [4.0.30319]
X-Powered-By: [ASP.NET]
content-length: ['308']
x-ms-ratelimit-remaining-subscription-resource-requests: ['11999']
status: {code: 200, message: OK}
- request:
body: '{"type": "Microsoft.Web/sites/config", "properties": {"WEBSITE_NODE_DEFAULT_VERSION":
"6.5.0", "WEBSITE_CONTENTSHARE": "functionappconsumption", "AzureWebJobsStorage":
"DefaultEndpointsProtocol=https;AccountName=functionaconstorage;AccountKey=+su3dZsT+f1LyislP808QIOLY9hE35PlZ/5GGdOalZKYPKOG0U3Hn1+LWkp3FkJX14PJsuM1Il/B37wrjlxaSg==",
"WEBSITE_CONTENTAZUREFILECONNECTIONSTRING": "DefaultEndpointsProtocol=https;AccountName=functionaconstorage;AccountKey=+su3dZsT+f1LyislP808QIOLY9hE35PlZ/5GGdOalZKYPKOG0U3Hn1+LWkp3FkJX14PJsuM1Il/B37wrjlxaSg==",
"FUNCTIONS_EXTENSION_VERSION": "~1", "AzureWebJobsDashboard": "DefaultEndpointsProtocol=https;AccountName=functionaconstorage;AccountKey=+su3dZsT+f1LyislP808QIOLY9hE35PlZ/5GGdOalZKYPKOG0U3Hn1+LWkp3FkJX14PJsuM1Il/B37wrjlxaSg=="},
"name": "appsettings", "location": "West US"}'
headers:
Accept: [application/json]
Accept-Encoding: ['gzip, deflate']
Connection: [keep-alive]
Content-Length: ['818']
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.2 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 websitemanagementclient/0.31.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.2+dev]
accept-language: [en-US]
x-ms-client-request-id: [5c6f25d4-1efb-11e7-ab9a-78acc0ad0877]
method: PUT
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-c-e2e/providers/Microsoft.Web/sites/functionappconsumption/config/appsettings?api-version=2016-08-01
response:
body: {string: '{"Code":"InternalServerError","Message":null,"Target":null,"Details":[{"Message":null},{"Code":"InternalServerError"},{"ErrorEntity":{"Code":"InternalServerError","Message":null}}],"Innererror":null}'}
headers:
Cache-Control: [no-cache]
Connection: [close]
Content-Length: ['199']
Content-Type: [application/json; charset=utf-8]
Date: ['Tue, 11 Apr 2017 21:11:03 GMT']
ETag: ['"1D2B3081F1BEDC0"']
Expires: ['-1']
Pragma: [no-cache]
Server: [Microsoft-IIS/8.0]
Strict-Transport-Security: [max-age=31536000; includeSubDomains]
X-AspNet-Version: [4.0.30319]
X-Powered-By: [ASP.NET]
x-ms-failure-cause: [service]
x-ms-ratelimit-remaining-subscription-writes: ['1198']
status: {code: 500, message: Internal Server Error}
- request:
body: '{"type": "Microsoft.Web/sites/config", "properties": {"WEBSITE_NODE_DEFAULT_VERSION":
"6.5.0", "WEBSITE_CONTENTSHARE": "functionappconsumption", "AzureWebJobsStorage":
"DefaultEndpointsProtocol=https;AccountName=functionaconstorage;AccountKey=+su3dZsT+f1LyislP808QIOLY9hE35PlZ/5GGdOalZKYPKOG0U3Hn1+LWkp3FkJX14PJsuM1Il/B37wrjlxaSg==",
"WEBSITE_CONTENTAZUREFILECONNECTIONSTRING": "DefaultEndpointsProtocol=https;AccountName=functionaconstorage;AccountKey=+su3dZsT+f1LyislP808QIOLY9hE35PlZ/5GGdOalZKYPKOG0U3Hn1+LWkp3FkJX14PJsuM1Il/B37wrjlxaSg==",
"FUNCTIONS_EXTENSION_VERSION": "~1", "AzureWebJobsDashboard": "DefaultEndpointsProtocol=https;AccountName=functionaconstorage;AccountKey=+su3dZsT+f1LyislP808QIOLY9hE35PlZ/5GGdOalZKYPKOG0U3Hn1+LWkp3FkJX14PJsuM1Il/B37wrjlxaSg=="},
"name": "appsettings", "location": "West US"}'
headers:
Accept: [application/json]
Accept-Encoding: ['gzip, deflate']
Connection: [keep-alive]
Content-Length: ['818']
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.2 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 websitemanagementclient/0.31.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.2+dev]
accept-language: [en-US]
x-ms-client-request-id: [5c6f25d4-1efb-11e7-ab9a-78acc0ad0877]
method: PUT
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-c-e2e/providers/Microsoft.Web/sites/functionappconsumption/config/appsettings?api-version=2016-08-01
response:
body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-c-e2e/providers/Microsoft.Web/sites/functionappconsumption/config/appsettings","name":"appsettings","type":"Microsoft.Web/sites/config","location":"West
US","properties":{"WEBSITE_NODE_DEFAULT_VERSION":"6.5.0","WEBSITE_CONTENTSHARE":"functionappconsumption","AzureWebJobsStorage":"DefaultEndpointsProtocol=https;AccountName=functionaconstorage;AccountKey=+su3dZsT+f1LyislP808QIOLY9hE35PlZ/5GGdOalZKYPKOG0U3Hn1+LWkp3FkJX14PJsuM1Il/B37wrjlxaSg==","WEBSITE_CONTENTAZUREFILECONNECTIONSTRING":"DefaultEndpointsProtocol=https;AccountName=functionaconstorage;AccountKey=+su3dZsT+f1LyislP808QIOLY9hE35PlZ/5GGdOalZKYPKOG0U3Hn1+LWkp3FkJX14PJsuM1Il/B37wrjlxaSg==","FUNCTIONS_EXTENSION_VERSION":"~1","AzureWebJobsDashboard":"DefaultEndpointsProtocol=https;AccountName=functionaconstorage;AccountKey=+su3dZsT+f1LyislP808QIOLY9hE35PlZ/5GGdOalZKYPKOG0U3Hn1+LWkp3FkJX14PJsuM1Il/B37wrjlxaSg=="}}'}
headers:
Cache-Control: [no-cache]
Content-Type: [application/json]
Date: ['Tue, 11 Apr 2017 21:11:04 GMT']
ETag: ['"1D2B30821A97670"']
Expires: ['-1']
Pragma: [no-cache]
Server: [Microsoft-IIS/8.0]
Strict-Transport-Security: [max-age=31536000; includeSubDomains]
Transfer-Encoding: [chunked]
Vary: [Accept-Encoding]
X-AspNet-Version: [4.0.30319]
X-Powered-By: [ASP.NET]
content-length: ['979']
x-ms-ratelimit-remaining-subscription-writes: ['1197']
status: {code: 200, message: OK}
- request:
body: null
headers:
Accept: [application/json]
Accept-Encoding: ['gzip, deflate']
Connection: [keep-alive]
Content-Length: ['0']
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.2 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 websitemanagementclient/0.31.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.2+dev]
accept-language: [en-US]
x-ms-client-request-id: [60765ab0-1efb-11e7-86ba-78acc0ad0877]
method: DELETE
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurecli-functionapp-c-e2e/providers/Microsoft.Web/sites/functionappconsumption?api-version=2016-08-01
response:
body: {string: ''}
headers:
Cache-Control: [no-cache]
Content-Length: ['0']
Date: ['Tue, 11 Apr 2017 21:11:07 GMT']
ETag: ['"1D2B30821A97670"']
Expires: ['-1']
Pragma: [no-cache]
Server: [Microsoft-IIS/8.0]
Strict-Transport-Security: [max-age=31536000; includeSubDomains]
X-AspNet-Version: [4.0.30319]
X-Powered-By: [ASP.NET]
x-ms-ratelimit-remaining-subscription-writes: ['1198']
status: {code: 200, message: OK}
version: 1

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Просмотреть файл

@ -8,9 +8,9 @@ interactions:
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.3 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 resourcemanagementclient/1.0.0rc1 Azure-SDK-For-Python
AZURECLI/TEST/2.0.3+dev]
AZURECLI/TEST/2.0.4+dev]
accept-language: [en-US]
x-ms-client-request-id: [1b30514a-2c5a-11e7-bd1a-64510658e3b3]
x-ms-client-request-id: [a6a22c10-2f8d-11e7-9c11-64510658e3b3]
method: GET
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test_cli_webapp_ssl?api-version=2016-09-01
response:
@ -18,7 +18,7 @@ interactions:
headers:
Cache-Control: [no-cache]
Content-Type: [application/json; charset=utf-8]
Date: ['Fri, 28 Apr 2017 21:31:56 GMT']
Date: ['Tue, 02 May 2017 23:18:28 GMT']
Expires: ['-1']
Pragma: [no-cache]
Strict-Transport-Security: [max-age=31536000; includeSubDomains]
@ -26,8 +26,8 @@ interactions:
content-length: ['228']
status: {code: 200, message: OK}
- request:
body: '{"properties": {"perSiteScaling": false, "name": "webapp-ssl-test-plan"},
"location": "westus", "sku": {"capacity": 1, "name": "B1", "tier": "BASIC"}}'
body: '{"sku": {"capacity": 1, "tier": "BASIC", "name": "B1"}, "properties": {"perSiteScaling":
false, "name": "webapp-ssl-test-plan"}, "location": "westus"}'
headers:
Accept: [application/json]
Accept-Encoding: ['gzip, deflate']
@ -35,19 +35,19 @@ interactions:
Content-Length: ['150']
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.3 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 websitemanagementclient/0.32.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.3+dev]
msrest_azure/0.4.7 websitemanagementclient/0.32.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.4+dev]
accept-language: [en-US]
x-ms-client-request-id: [1b41a336-2c5a-11e7-886f-64510658e3b3]
x-ms-client-request-id: [a6b4f178-2f8d-11e7-a76f-64510658e3b3]
method: PUT
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_cli_webapp_ssl/providers/Microsoft.Web/serverfarms/webapp-ssl-test-plan?api-version=2016-09-01
response:
body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_cli_webapp_ssl/providers/Microsoft.Web/serverfarms/webapp-ssl-test-plan","name":"webapp-ssl-test-plan","type":"Microsoft.Web/serverfarms","kind":"app","location":"West
US","properties":{"serverFarmId":0,"name":"webapp-ssl-test-plan","workerSize":"Small","workerSizeId":0,"workerTierName":null,"numberOfWorkers":1,"currentWorkerSize":"Small","currentWorkerSizeId":0,"currentNumberOfWorkers":1,"status":"Ready","webSpace":"test_cli_webapp_ssl-WestUSwebspace","subscription":"0b1f6471-1bf0-4dda-aec3-cb9272f09590","adminSiteName":null,"hostingEnvironment":null,"hostingEnvironmentProfile":null,"maximumNumberOfWorkers":3,"planName":"VirtualDedicatedPlan","adminRuntimeSiteName":null,"computeMode":"Shared","siteMode":null,"geoRegion":"West
US","perSiteScaling":false,"numberOfSites":0,"hostingEnvironmentId":null,"tags":null,"kind":"app","resourceGroup":"test_cli_webapp_ssl","reserved":false,"mdmId":"waws-prod-bay-075_6556","targetWorkerCount":0,"targetWorkerSizeId":0,"provisioningState":"Succeeded"},"sku":{"name":"B1","tier":"Basic","size":"B1","family":"B","capacity":1}}'}
US","perSiteScaling":false,"numberOfSites":0,"hostingEnvironmentId":null,"tags":null,"kind":"app","resourceGroup":"test_cli_webapp_ssl","reserved":false,"mdmId":"waws-prod-bay-075_6697","targetWorkerCount":0,"targetWorkerSizeId":0,"provisioningState":"Succeeded"},"sku":{"name":"B1","tier":"Basic","size":"B1","family":"B","capacity":1}}'}
headers:
Cache-Control: [no-cache]
Content-Type: [application/json]
Date: ['Fri, 28 Apr 2017 21:32:08 GMT']
Date: ['Tue, 02 May 2017 23:18:38 GMT']
Expires: ['-1']
Pragma: [no-cache]
Server: [Microsoft-IIS/8.0]
@ -57,7 +57,7 @@ interactions:
X-AspNet-Version: [4.0.30319]
X-Powered-By: [ASP.NET]
content-length: ['1171']
x-ms-ratelimit-remaining-subscription-writes: ['1196']
x-ms-ratelimit-remaining-subscription-writes: ['1198']
status: {code: 200, message: OK}
- request:
body: null
@ -67,19 +67,19 @@ interactions:
Connection: [keep-alive]
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.3 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 websitemanagementclient/0.32.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.3+dev]
msrest_azure/0.4.7 websitemanagementclient/0.32.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.4+dev]
accept-language: [en-US]
x-ms-client-request-id: [226cf7e8-2c5a-11e7-908b-64510658e3b3]
x-ms-client-request-id: [acb22566-2f8d-11e7-87c7-64510658e3b3]
method: GET
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_cli_webapp_ssl/providers/Microsoft.Web/serverfarms/webapp-ssl-test-plan?api-version=2016-09-01
response:
body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_cli_webapp_ssl/providers/Microsoft.Web/serverfarms/webapp-ssl-test-plan","name":"webapp-ssl-test-plan","type":"Microsoft.Web/serverfarms","kind":"app","location":"West
US","properties":{"serverFarmId":0,"name":"webapp-ssl-test-plan","workerSize":"Small","workerSizeId":0,"workerTierName":null,"numberOfWorkers":1,"currentWorkerSize":"Small","currentWorkerSizeId":0,"currentNumberOfWorkers":1,"status":"Ready","webSpace":"test_cli_webapp_ssl-WestUSwebspace","subscription":"0b1f6471-1bf0-4dda-aec3-cb9272f09590","adminSiteName":null,"hostingEnvironment":null,"hostingEnvironmentProfile":null,"maximumNumberOfWorkers":3,"planName":"VirtualDedicatedPlan","adminRuntimeSiteName":null,"computeMode":"Shared","siteMode":null,"geoRegion":"West
US","perSiteScaling":false,"numberOfSites":0,"hostingEnvironmentId":null,"tags":null,"kind":"app","resourceGroup":"test_cli_webapp_ssl","reserved":false,"mdmId":"waws-prod-bay-075_6556","targetWorkerCount":0,"targetWorkerSizeId":0,"provisioningState":"Succeeded"},"sku":{"name":"B1","tier":"Basic","size":"B1","family":"B","capacity":1}}'}
US","perSiteScaling":false,"numberOfSites":0,"hostingEnvironmentId":null,"tags":null,"kind":"app","resourceGroup":"test_cli_webapp_ssl","reserved":false,"mdmId":"waws-prod-bay-075_6697","targetWorkerCount":0,"targetWorkerSizeId":0,"provisioningState":"Succeeded"},"sku":{"name":"B1","tier":"Basic","size":"B1","family":"B","capacity":1}}'}
headers:
Cache-Control: [no-cache]
Content-Type: [application/json]
Date: ['Fri, 28 Apr 2017 21:32:09 GMT']
Date: ['Tue, 02 May 2017 23:18:39 GMT']
Expires: ['-1']
Pragma: [no-cache]
Server: [Microsoft-IIS/8.0]
@ -91,8 +91,8 @@ interactions:
content-length: ['1171']
status: {code: 200, message: OK}
- request:
body: '{"properties": {"microService": "WebSites", "serverFarmId": "webapp-ssl-test-plan",
"scmSiteAlsoStopped": false, "reserved": false}, "location": "West US"}'
body: '{"properties": {"microService": "WebSites", "reserved": false, "scmSiteAlsoStopped":
false, "serverFarmId": "webapp-ssl-test-plan"}, "location": "West US"}'
headers:
Accept: [application/json]
Accept-Encoding: ['gzip, deflate']
@ -100,19 +100,19 @@ interactions:
Content-Length: ['155']
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.3 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 websitemanagementclient/0.32.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.3+dev]
msrest_azure/0.4.7 websitemanagementclient/0.32.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.4+dev]
accept-language: [en-US]
x-ms-client-request-id: [22a4d09a-2c5a-11e7-a147-64510658e3b3]
x-ms-client-request-id: [ad64cc36-2f8d-11e7-994d-64510658e3b3]
method: PUT
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_cli_webapp_ssl/providers/Microsoft.Web/sites/webapp-ssl-test123?api-version=2016-08-01
response:
body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_cli_webapp_ssl/providers/Microsoft.Web/sites/webapp-ssl-test123","name":"webapp-ssl-test123","type":"Microsoft.Web/sites","kind":"app","location":"West
US","properties":{"name":"webapp-ssl-test123","state":"Running","hostNames":["webapp-ssl-test123.azurewebsites.net"],"webSpace":"test_cli_webapp_ssl-WestUSwebspace","selfLink":"https://waws-prod-bay-075.api.azurewebsites.windows.net:454/subscriptions/00000000-0000-0000-0000-000000000000/webspaces/test_cli_webapp_ssl-WestUSwebspace/sites/webapp-ssl-test123","repositorySiteName":"webapp-ssl-test123","owner":null,"usageState":"Normal","enabled":true,"adminEnabled":true,"enabledHostNames":["webapp-ssl-test123.azurewebsites.net","webapp-ssl-test123.scm.azurewebsites.net"],"siteProperties":{"metadata":null,"properties":[],"appSettings":null},"availabilityState":"Normal","sslCertificates":null,"csrs":[],"cers":null,"siteMode":null,"hostNameSslStates":[{"name":"webapp-ssl-test123.azurewebsites.net","sslState":"Disabled","ipBasedSslResult":null,"virtualIP":null,"thumbprint":null,"toUpdate":null,"toUpdateIpBasedSsl":null,"ipBasedSslState":"NotConfigured","hostType":"Standard"},{"name":"webapp-ssl-test123.scm.azurewebsites.net","sslState":"Disabled","ipBasedSslResult":null,"virtualIP":null,"thumbprint":null,"toUpdate":null,"toUpdateIpBasedSsl":null,"ipBasedSslState":"NotConfigured","hostType":"Repository"}],"computeMode":null,"serverFarm":null,"serverFarmId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_cli_webapp_ssl/providers/Microsoft.Web/serverfarms/webapp-ssl-test-plan","reserved":false,"lastModifiedTimeUtc":"2017-04-28T21:32:12.2233333","storageRecoveryDefaultState":"Running","contentAvailabilityState":"Normal","runtimeAvailabilityState":"Normal","siteConfig":null,"deploymentId":"webapp-ssl-test123","trafficManagerHostNames":null,"sku":"Basic","premiumAppDeployed":null,"scmSiteAlsoStopped":false,"targetSwapSlot":null,"hostingEnvironment":null,"hostingEnvironmentProfile":null,"microService":"WebSites","gatewaySiteName":null,"clientAffinityEnabled":true,"clientCertEnabled":false,"hostNamesDisabled":false,"domainVerificationIdentifiers":null,"kind":"app","outboundIpAddresses":"104.40.3.53,104.40.18.224,104.40.21.79,104.40.21.56,104.40.23.196","containerSize":0,"dailyMemoryTimeQuota":0,"suspendedTill":null,"siteDisabledReason":0,"functionExecutionUnitsCache":null,"maxNumberOfWorkers":null,"homeStamp":"waws-prod-bay-075","cloningInfo":null,"hostingEnvironmentId":null,"tags":null,"resourceGroup":"test_cli_webapp_ssl","defaultHostName":"webapp-ssl-test123.azurewebsites.net","slotSwapStatus":null}}'}
US","properties":{"name":"webapp-ssl-test123","state":"Running","hostNames":["webapp-ssl-test123.azurewebsites.net"],"webSpace":"test_cli_webapp_ssl-WestUSwebspace","selfLink":"https://waws-prod-bay-075.api.azurewebsites.windows.net:454/subscriptions/00000000-0000-0000-0000-000000000000/webspaces/test_cli_webapp_ssl-WestUSwebspace/sites/webapp-ssl-test123","repositorySiteName":"webapp-ssl-test123","owner":null,"usageState":"Normal","enabled":true,"adminEnabled":true,"enabledHostNames":["webapp-ssl-test123.azurewebsites.net","webapp-ssl-test123.scm.azurewebsites.net"],"siteProperties":{"metadata":null,"properties":[],"appSettings":null},"availabilityState":"Normal","sslCertificates":null,"csrs":[],"cers":null,"siteMode":null,"hostNameSslStates":[{"name":"webapp-ssl-test123.azurewebsites.net","sslState":"Disabled","ipBasedSslResult":null,"virtualIP":null,"thumbprint":null,"toUpdate":null,"toUpdateIpBasedSsl":null,"ipBasedSslState":"NotConfigured","hostType":"Standard"},{"name":"webapp-ssl-test123.scm.azurewebsites.net","sslState":"Disabled","ipBasedSslResult":null,"virtualIP":null,"thumbprint":null,"toUpdate":null,"toUpdateIpBasedSsl":null,"ipBasedSslState":"NotConfigured","hostType":"Repository"}],"computeMode":null,"serverFarm":null,"serverFarmId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_cli_webapp_ssl/providers/Microsoft.Web/serverfarms/webapp-ssl-test-plan","reserved":false,"lastModifiedTimeUtc":"2017-05-02T23:18:41.63","storageRecoveryDefaultState":"Running","contentAvailabilityState":"Normal","runtimeAvailabilityState":"Normal","siteConfig":null,"deploymentId":"webapp-ssl-test123","trafficManagerHostNames":null,"sku":"Basic","premiumAppDeployed":null,"scmSiteAlsoStopped":false,"targetSwapSlot":null,"hostingEnvironment":null,"hostingEnvironmentProfile":null,"microService":"WebSites","gatewaySiteName":null,"clientAffinityEnabled":true,"clientCertEnabled":false,"hostNamesDisabled":false,"domainVerificationIdentifiers":null,"kind":"app","outboundIpAddresses":"104.40.3.53,104.40.18.224,104.40.21.79,104.40.21.56,104.40.23.196","containerSize":0,"dailyMemoryTimeQuota":0,"suspendedTill":null,"siteDisabledReason":0,"functionExecutionUnitsCache":null,"maxNumberOfWorkers":null,"homeStamp":"waws-prod-bay-075","cloningInfo":null,"hostingEnvironmentId":null,"tags":null,"resourceGroup":"test_cli_webapp_ssl","defaultHostName":"webapp-ssl-test123.azurewebsites.net","slotSwapStatus":null}}'}
headers:
Cache-Control: [no-cache]
Content-Type: [application/json]
Date: ['Fri, 28 Apr 2017 21:32:21 GMT']
ETag: ['"1D2C066E60F6C55"']
Date: ['Tue, 02 May 2017 23:18:51 GMT']
ETag: ['"1D2C39A6FEB3DB5"']
Expires: ['-1']
Pragma: [no-cache]
Server: [Microsoft-IIS/8.0]
@ -121,7 +121,7 @@ interactions:
Vary: [Accept-Encoding]
X-AspNet-Version: [4.0.30319]
X-Powered-By: [ASP.NET]
content-length: ['2716']
content-length: ['2711']
x-ms-ratelimit-remaining-subscription-writes: ['1197']
status: {code: 200, message: OK}
- request:
@ -133,35 +133,35 @@ interactions:
Content-Length: ['2']
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.3 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 websitemanagementclient/0.32.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.3+dev]
msrest_azure/0.4.7 websitemanagementclient/0.32.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.4+dev]
accept-language: [en-US]
x-ms-client-request-id: [2a681250-2c5a-11e7-a406-64510658e3b3]
x-ms-client-request-id: [b4901522-2f8d-11e7-abf4-64510658e3b3]
method: POST
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_cli_webapp_ssl/providers/Microsoft.Web/sites/webapp-ssl-test123/publishxml?api-version=2016-08-01
response:
body: {string: '<publishData><publishProfile profileName="webapp-ssl-test123 -
Web Deploy" publishMethod="MSDeploy" publishUrl="webapp-ssl-test123.scm.azurewebsites.net:443"
msdeploySite="webapp-ssl-test123" userName="$webapp-ssl-test123" userPWD="ymwp9YvjDeXg1kDxafjEb3CaJlXgnYWuKvTM2qYxcJgGywAzmYQ2YNFv9ezd"
msdeploySite="webapp-ssl-test123" userName="$webapp-ssl-test123" userPWD="ls72yNpaghEr7qhg9BzCx22dLaZfu4D6vyurQ82PhWQKXJY6W0SqYRP4Dkfm"
destinationAppUrl="http://webapp-ssl-test123.azurewebsites.net" SQLServerDBConnectionString=""
mySQLDBConnectionString="" hostingProviderForumLink="" controlPanelLink=""
mySQLDBConnectionString="" hostingProviderForumLink="" controlPanelLink="http://windows.azure.com"
webSystem="WebSites"><databases /></publishProfile><publishProfile profileName="webapp-ssl-test123
- FTP" publishMethod="FTP" publishUrl="ftp://waws-prod-bay-075.ftp.azurewebsites.windows.net/site/wwwroot"
ftpPassiveMode="True" userName="webapp-ssl-test123\$webapp-ssl-test123" userPWD="ymwp9YvjDeXg1kDxafjEb3CaJlXgnYWuKvTM2qYxcJgGywAzmYQ2YNFv9ezd"
ftpPassiveMode="True" userName="webapp-ssl-test123\$webapp-ssl-test123" userPWD="ls72yNpaghEr7qhg9BzCx22dLaZfu4D6vyurQ82PhWQKXJY6W0SqYRP4Dkfm"
destinationAppUrl="http://webapp-ssl-test123.azurewebsites.net" SQLServerDBConnectionString=""
mySQLDBConnectionString="" hostingProviderForumLink="" controlPanelLink=""
mySQLDBConnectionString="" hostingProviderForumLink="" controlPanelLink="http://windows.azure.com"
webSystem="WebSites"><databases /></publishProfile></publishData>'}
headers:
Cache-Control: [no-cache]
Content-Length: ['1048']
Content-Length: ['1096']
Content-Type: [application/xml]
Date: ['Fri, 28 Apr 2017 21:32:22 GMT']
Date: ['Tue, 02 May 2017 23:18:52 GMT']
Expires: ['-1']
Pragma: [no-cache]
Server: [Microsoft-IIS/8.0]
Strict-Transport-Security: [max-age=31536000; includeSubDomains]
X-AspNet-Version: [4.0.30319]
X-Powered-By: [ASP.NET]
x-ms-ratelimit-remaining-subscription-resource-requests: ['11997']
x-ms-ratelimit-remaining-subscription-resource-requests: ['11999']
status: {code: 200, message: OK}
- request:
body: null
@ -171,19 +171,19 @@ interactions:
Connection: [keep-alive]
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.3 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 websitemanagementclient/0.32.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.3+dev]
msrest_azure/0.4.7 websitemanagementclient/0.32.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.4+dev]
accept-language: [en-US]
x-ms-client-request-id: [2ae11286-2c5a-11e7-90cd-64510658e3b3]
x-ms-client-request-id: [b5054502-2f8d-11e7-878f-64510658e3b3]
method: GET
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_cli_webapp_ssl/providers/Microsoft.Web/sites/webapp-ssl-test123?api-version=2016-08-01
response:
body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_cli_webapp_ssl/providers/Microsoft.Web/sites/webapp-ssl-test123","name":"webapp-ssl-test123","type":"Microsoft.Web/sites","kind":"app","location":"West
US","properties":{"name":"webapp-ssl-test123","state":"Running","hostNames":["webapp-ssl-test123.azurewebsites.net"],"webSpace":"test_cli_webapp_ssl-WestUSwebspace","selfLink":"https://waws-prod-bay-075.api.azurewebsites.windows.net:454/subscriptions/00000000-0000-0000-0000-000000000000/webspaces/test_cli_webapp_ssl-WestUSwebspace/sites/webapp-ssl-test123","repositorySiteName":"webapp-ssl-test123","owner":null,"usageState":"Normal","enabled":true,"adminEnabled":true,"enabledHostNames":["webapp-ssl-test123.azurewebsites.net","webapp-ssl-test123.scm.azurewebsites.net"],"siteProperties":{"metadata":null,"properties":[],"appSettings":null},"availabilityState":"Normal","sslCertificates":null,"csrs":[],"cers":null,"siteMode":null,"hostNameSslStates":[{"name":"webapp-ssl-test123.azurewebsites.net","sslState":"Disabled","ipBasedSslResult":null,"virtualIP":null,"thumbprint":null,"toUpdate":null,"toUpdateIpBasedSsl":null,"ipBasedSslState":"NotConfigured","hostType":"Standard"},{"name":"webapp-ssl-test123.scm.azurewebsites.net","sslState":"Disabled","ipBasedSslResult":null,"virtualIP":null,"thumbprint":null,"toUpdate":null,"toUpdateIpBasedSsl":null,"ipBasedSslState":"NotConfigured","hostType":"Repository"}],"computeMode":null,"serverFarm":null,"serverFarmId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_cli_webapp_ssl/providers/Microsoft.Web/serverfarms/webapp-ssl-test-plan","reserved":false,"lastModifiedTimeUtc":"2017-04-28T21:32:12.6133333","storageRecoveryDefaultState":"Running","contentAvailabilityState":"Normal","runtimeAvailabilityState":"Normal","siteConfig":null,"deploymentId":"webapp-ssl-test123","trafficManagerHostNames":null,"sku":"Basic","premiumAppDeployed":null,"scmSiteAlsoStopped":false,"targetSwapSlot":null,"hostingEnvironment":null,"hostingEnvironmentProfile":null,"microService":"WebSites","gatewaySiteName":null,"clientAffinityEnabled":true,"clientCertEnabled":false,"hostNamesDisabled":false,"domainVerificationIdentifiers":null,"kind":"app","outboundIpAddresses":"104.40.3.53,104.40.18.224,104.40.21.79,104.40.21.56,104.40.23.196","containerSize":0,"dailyMemoryTimeQuota":0,"suspendedTill":null,"siteDisabledReason":0,"functionExecutionUnitsCache":null,"maxNumberOfWorkers":null,"homeStamp":"waws-prod-bay-075","cloningInfo":null,"hostingEnvironmentId":null,"tags":null,"resourceGroup":"test_cli_webapp_ssl","defaultHostName":"webapp-ssl-test123.azurewebsites.net","slotSwapStatus":null}}'}
US","properties":{"name":"webapp-ssl-test123","state":"Running","hostNames":["webapp-ssl-test123.azurewebsites.net"],"webSpace":"test_cli_webapp_ssl-WestUSwebspace","selfLink":"https://waws-prod-bay-075.api.azurewebsites.windows.net:454/subscriptions/00000000-0000-0000-0000-000000000000/webspaces/test_cli_webapp_ssl-WestUSwebspace/sites/webapp-ssl-test123","repositorySiteName":"webapp-ssl-test123","owner":null,"usageState":"Normal","enabled":true,"adminEnabled":true,"enabledHostNames":["webapp-ssl-test123.azurewebsites.net","webapp-ssl-test123.scm.azurewebsites.net"],"siteProperties":{"metadata":null,"properties":[],"appSettings":null},"availabilityState":"Normal","sslCertificates":null,"csrs":[],"cers":null,"siteMode":null,"hostNameSslStates":[{"name":"webapp-ssl-test123.azurewebsites.net","sslState":"Disabled","ipBasedSslResult":null,"virtualIP":null,"thumbprint":null,"toUpdate":null,"toUpdateIpBasedSsl":null,"ipBasedSslState":"NotConfigured","hostType":"Standard"},{"name":"webapp-ssl-test123.scm.azurewebsites.net","sslState":"Disabled","ipBasedSslResult":null,"virtualIP":null,"thumbprint":null,"toUpdate":null,"toUpdateIpBasedSsl":null,"ipBasedSslState":"NotConfigured","hostType":"Repository"}],"computeMode":null,"serverFarm":null,"serverFarmId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_cli_webapp_ssl/providers/Microsoft.Web/serverfarms/webapp-ssl-test-plan","reserved":false,"lastModifiedTimeUtc":"2017-05-02T23:18:41.7233333","storageRecoveryDefaultState":"Running","contentAvailabilityState":"Normal","runtimeAvailabilityState":"Normal","siteConfig":null,"deploymentId":"webapp-ssl-test123","trafficManagerHostNames":null,"sku":"Basic","premiumAppDeployed":null,"scmSiteAlsoStopped":false,"targetSwapSlot":null,"hostingEnvironment":null,"hostingEnvironmentProfile":null,"microService":"WebSites","gatewaySiteName":null,"clientAffinityEnabled":true,"clientCertEnabled":false,"hostNamesDisabled":false,"domainVerificationIdentifiers":null,"kind":"app","outboundIpAddresses":"104.40.3.53,104.40.18.224,104.40.21.79,104.40.21.56,104.40.23.196","containerSize":0,"dailyMemoryTimeQuota":0,"suspendedTill":null,"siteDisabledReason":0,"functionExecutionUnitsCache":null,"maxNumberOfWorkers":null,"homeStamp":"waws-prod-bay-075","cloningInfo":null,"hostingEnvironmentId":null,"tags":null,"resourceGroup":"test_cli_webapp_ssl","defaultHostName":"webapp-ssl-test123.azurewebsites.net","slotSwapStatus":null}}'}
headers:
Cache-Control: [no-cache]
Content-Type: [application/json]
Date: ['Fri, 28 Apr 2017 21:32:23 GMT']
ETag: ['"1D2C066E60F6C55"']
Date: ['Tue, 02 May 2017 23:18:53 GMT']
ETag: ['"1D2C39A6FEB3DB5"']
Expires: ['-1']
Pragma: [no-cache]
Server: [Microsoft-IIS/8.0]
@ -204,9 +204,9 @@ interactions:
Content-Length: ['3430']
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.3 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 websitemanagementclient/0.32.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.3+dev]
msrest_azure/0.4.7 websitemanagementclient/0.32.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.4+dev]
accept-language: [en-US]
x-ms-client-request-id: [2b424452-2c5a-11e7-8bd6-64510658e3b3]
x-ms-client-request-id: [b566c5da-2f8d-11e7-ae05-64510658e3b3]
method: PUT
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_cli_webapp_ssl/providers/Microsoft.Web/certificates/DB2BA6898D0B330A93E7F69FF505C61EF39921B6__West%20US_test_cli_webapp_ssl?api-version=2016-03-01
response:
@ -217,7 +217,7 @@ interactions:
headers:
Cache-Control: [no-cache]
Content-Type: [application/json]
Date: ['Fri, 28 Apr 2017 21:32:25 GMT']
Date: ['Tue, 02 May 2017 23:18:55 GMT']
Expires: ['-1']
Pragma: [no-cache]
Server: [Microsoft-IIS/8.0]
@ -229,7 +229,7 @@ interactions:
X-AspNet-Version: [4.0.30319]
X-Powered-By: [ASP.NET]
content-length: ['994']
x-ms-ratelimit-remaining-subscription-writes: ['1196']
x-ms-ratelimit-remaining-subscription-writes: ['1199']
status: {code: 200, message: OK}
- request:
body: null
@ -239,19 +239,19 @@ interactions:
Connection: [keep-alive]
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.3 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 websitemanagementclient/0.32.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.3+dev]
msrest_azure/0.4.7 websitemanagementclient/0.32.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.4+dev]
accept-language: [en-US]
x-ms-client-request-id: [2c62aab0-2c5a-11e7-b4b3-64510658e3b3]
x-ms-client-request-id: [b6b95cec-2f8d-11e7-9225-64510658e3b3]
method: GET
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_cli_webapp_ssl/providers/Microsoft.Web/sites/webapp-ssl-test123?api-version=2016-08-01
response:
body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_cli_webapp_ssl/providers/Microsoft.Web/sites/webapp-ssl-test123","name":"webapp-ssl-test123","type":"Microsoft.Web/sites","kind":"app","location":"West
US","properties":{"name":"webapp-ssl-test123","state":"Running","hostNames":["webapp-ssl-test123.azurewebsites.net"],"webSpace":"test_cli_webapp_ssl-WestUSwebspace","selfLink":"https://waws-prod-bay-075.api.azurewebsites.windows.net:454/subscriptions/00000000-0000-0000-0000-000000000000/webspaces/test_cli_webapp_ssl-WestUSwebspace/sites/webapp-ssl-test123","repositorySiteName":"webapp-ssl-test123","owner":null,"usageState":"Normal","enabled":true,"adminEnabled":true,"enabledHostNames":["webapp-ssl-test123.azurewebsites.net","webapp-ssl-test123.scm.azurewebsites.net"],"siteProperties":{"metadata":null,"properties":[],"appSettings":null},"availabilityState":"Normal","sslCertificates":null,"csrs":[],"cers":null,"siteMode":null,"hostNameSslStates":[{"name":"webapp-ssl-test123.azurewebsites.net","sslState":"Disabled","ipBasedSslResult":null,"virtualIP":null,"thumbprint":null,"toUpdate":null,"toUpdateIpBasedSsl":null,"ipBasedSslState":"NotConfigured","hostType":"Standard"},{"name":"webapp-ssl-test123.scm.azurewebsites.net","sslState":"Disabled","ipBasedSslResult":null,"virtualIP":null,"thumbprint":null,"toUpdate":null,"toUpdateIpBasedSsl":null,"ipBasedSslState":"NotConfigured","hostType":"Repository"}],"computeMode":null,"serverFarm":null,"serverFarmId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_cli_webapp_ssl/providers/Microsoft.Web/serverfarms/webapp-ssl-test-plan","reserved":false,"lastModifiedTimeUtc":"2017-04-28T21:32:12.6133333","storageRecoveryDefaultState":"Running","contentAvailabilityState":"Normal","runtimeAvailabilityState":"Normal","siteConfig":null,"deploymentId":"webapp-ssl-test123","trafficManagerHostNames":null,"sku":"Basic","premiumAppDeployed":null,"scmSiteAlsoStopped":false,"targetSwapSlot":null,"hostingEnvironment":null,"hostingEnvironmentProfile":null,"microService":"WebSites","gatewaySiteName":null,"clientAffinityEnabled":true,"clientCertEnabled":false,"hostNamesDisabled":false,"domainVerificationIdentifiers":null,"kind":"app","outboundIpAddresses":"104.40.3.53,104.40.18.224,104.40.21.79,104.40.21.56,104.40.23.196","containerSize":0,"dailyMemoryTimeQuota":0,"suspendedTill":null,"siteDisabledReason":0,"functionExecutionUnitsCache":null,"maxNumberOfWorkers":null,"homeStamp":"waws-prod-bay-075","cloningInfo":null,"hostingEnvironmentId":null,"tags":null,"resourceGroup":"test_cli_webapp_ssl","defaultHostName":"webapp-ssl-test123.azurewebsites.net","slotSwapStatus":null}}'}
US","properties":{"name":"webapp-ssl-test123","state":"Running","hostNames":["webapp-ssl-test123.azurewebsites.net"],"webSpace":"test_cli_webapp_ssl-WestUSwebspace","selfLink":"https://waws-prod-bay-075.api.azurewebsites.windows.net:454/subscriptions/00000000-0000-0000-0000-000000000000/webspaces/test_cli_webapp_ssl-WestUSwebspace/sites/webapp-ssl-test123","repositorySiteName":"webapp-ssl-test123","owner":null,"usageState":"Normal","enabled":true,"adminEnabled":true,"enabledHostNames":["webapp-ssl-test123.azurewebsites.net","webapp-ssl-test123.scm.azurewebsites.net"],"siteProperties":{"metadata":null,"properties":[],"appSettings":null},"availabilityState":"Normal","sslCertificates":null,"csrs":[],"cers":null,"siteMode":null,"hostNameSslStates":[{"name":"webapp-ssl-test123.azurewebsites.net","sslState":"Disabled","ipBasedSslResult":null,"virtualIP":null,"thumbprint":null,"toUpdate":null,"toUpdateIpBasedSsl":null,"ipBasedSslState":"NotConfigured","hostType":"Standard"},{"name":"webapp-ssl-test123.scm.azurewebsites.net","sslState":"Disabled","ipBasedSslResult":null,"virtualIP":null,"thumbprint":null,"toUpdate":null,"toUpdateIpBasedSsl":null,"ipBasedSslState":"NotConfigured","hostType":"Repository"}],"computeMode":null,"serverFarm":null,"serverFarmId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_cli_webapp_ssl/providers/Microsoft.Web/serverfarms/webapp-ssl-test-plan","reserved":false,"lastModifiedTimeUtc":"2017-05-02T23:18:41.7233333","storageRecoveryDefaultState":"Running","contentAvailabilityState":"Normal","runtimeAvailabilityState":"Normal","siteConfig":null,"deploymentId":"webapp-ssl-test123","trafficManagerHostNames":null,"sku":"Basic","premiumAppDeployed":null,"scmSiteAlsoStopped":false,"targetSwapSlot":null,"hostingEnvironment":null,"hostingEnvironmentProfile":null,"microService":"WebSites","gatewaySiteName":null,"clientAffinityEnabled":true,"clientCertEnabled":false,"hostNamesDisabled":false,"domainVerificationIdentifiers":null,"kind":"app","outboundIpAddresses":"104.40.3.53,104.40.18.224,104.40.21.79,104.40.21.56,104.40.23.196","containerSize":0,"dailyMemoryTimeQuota":0,"suspendedTill":null,"siteDisabledReason":0,"functionExecutionUnitsCache":null,"maxNumberOfWorkers":null,"homeStamp":"waws-prod-bay-075","cloningInfo":null,"hostingEnvironmentId":null,"tags":null,"resourceGroup":"test_cli_webapp_ssl","defaultHostName":"webapp-ssl-test123.azurewebsites.net","slotSwapStatus":null}}'}
headers:
Cache-Control: [no-cache]
Content-Type: [application/json]
Date: ['Fri, 28 Apr 2017 21:32:25 GMT']
ETag: ['"1D2C066E60F6C55"']
Date: ['Tue, 02 May 2017 23:18:56 GMT']
ETag: ['"1D2C39A6FEB3DB5"']
Expires: ['-1']
Pragma: [no-cache]
Server: [Microsoft-IIS/8.0]
@ -270,9 +270,9 @@ interactions:
Connection: [keep-alive]
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.3 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 websitemanagementclient/0.32.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.3+dev]
msrest_azure/0.4.7 websitemanagementclient/0.32.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.4+dev]
accept-language: [en-US]
x-ms-client-request-id: [2ca86550-2c5a-11e7-ac9b-64510658e3b3]
x-ms-client-request-id: [b7216e26-2f8d-11e7-89ce-64510658e3b3]
method: GET
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_cli_webapp_ssl/providers/Microsoft.Web/certificates?api-version=2016-03-01
response:
@ -283,7 +283,7 @@ interactions:
headers:
Cache-Control: [no-cache]
Content-Type: [application/json]
Date: ['Fri, 28 Apr 2017 21:32:26 GMT']
Date: ['Tue, 02 May 2017 23:18:56 GMT']
Expires: ['-1']
Pragma: [no-cache]
Server: [Microsoft-IIS/8.0]
@ -295,10 +295,10 @@ interactions:
content-length: ['1032']
status: {code: 200, message: OK}
- request:
body: '{"properties": {"hostNameSslStates": [{"toUpdate": true, "thumbprint":
"DB2BA6898D0B330A93E7F69FF505C61EF39921B6", "name": "webapp-ssl-test123.azurewebsites.net",
"sslState": "SniEnabled"}], "scmSiteAlsoStopped": false, "microService": "WebSites",
"reserved": false}, "location": "West US"}'
body: '{"properties": {"scmSiteAlsoStopped": false, "microService": "WebSites",
"reserved": false, "hostNameSslStates": [{"sslState": "SniEnabled", "toUpdate":
true, "name": "webapp-ssl-test123.azurewebsites.net", "thumbprint": "DB2BA6898D0B330A93E7F69FF505C61EF39921B6"}]},
"location": "West US"}'
headers:
Accept: [application/json]
Accept-Encoding: ['gzip, deflate']
@ -306,19 +306,19 @@ interactions:
Content-Length: ['290']
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.3 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 websitemanagementclient/0.32.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.3+dev]
msrest_azure/0.4.7 websitemanagementclient/0.32.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.4+dev]
accept-language: [en-US]
x-ms-client-request-id: [2d08d558-2c5a-11e7-95a0-64510658e3b3]
x-ms-client-request-id: [b78475a6-2f8d-11e7-af76-64510658e3b3]
method: PUT
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_cli_webapp_ssl/providers/Microsoft.Web/sites/webapp-ssl-test123?api-version=2016-08-01
response:
body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_cli_webapp_ssl/providers/Microsoft.Web/sites/webapp-ssl-test123","name":"webapp-ssl-test123","type":"Microsoft.Web/sites","kind":"app","location":"West
US","properties":{"name":"webapp-ssl-test123","state":"Running","hostNames":["webapp-ssl-test123.azurewebsites.net"],"webSpace":"test_cli_webapp_ssl-WestUSwebspace","selfLink":"https://waws-prod-bay-075.api.azurewebsites.windows.net:454/subscriptions/00000000-0000-0000-0000-000000000000/webspaces/test_cli_webapp_ssl-WestUSwebspace/sites/webapp-ssl-test123","repositorySiteName":"webapp-ssl-test123","owner":null,"usageState":"Normal","enabled":true,"adminEnabled":true,"enabledHostNames":["webapp-ssl-test123.azurewebsites.net","webapp-ssl-test123.scm.azurewebsites.net"],"siteProperties":{"metadata":null,"properties":[],"appSettings":null},"availabilityState":"Normal","sslCertificates":null,"csrs":[],"cers":null,"siteMode":null,"hostNameSslStates":[{"name":"webapp-ssl-test123.azurewebsites.net","sslState":"SniEnabled","ipBasedSslResult":null,"virtualIP":null,"thumbprint":"DB2BA6898D0B330A93E7F69FF505C61EF39921B6","toUpdate":null,"toUpdateIpBasedSsl":null,"ipBasedSslState":"NotConfigured","hostType":"Standard"},{"name":"webapp-ssl-test123.scm.azurewebsites.net","sslState":"Disabled","ipBasedSslResult":null,"virtualIP":null,"thumbprint":null,"toUpdate":null,"toUpdateIpBasedSsl":null,"ipBasedSslState":"NotConfigured","hostType":"Repository"}],"computeMode":null,"serverFarm":null,"serverFarmId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_cli_webapp_ssl/providers/Microsoft.Web/serverfarms/webapp-ssl-test-plan","reserved":false,"lastModifiedTimeUtc":"2017-04-28T21:32:27.6633333","storageRecoveryDefaultState":"Running","contentAvailabilityState":"Normal","runtimeAvailabilityState":"Normal","siteConfig":null,"deploymentId":"webapp-ssl-test123","trafficManagerHostNames":null,"sku":"Basic","premiumAppDeployed":null,"scmSiteAlsoStopped":false,"targetSwapSlot":null,"hostingEnvironment":null,"hostingEnvironmentProfile":null,"microService":"WebSites","gatewaySiteName":null,"clientAffinityEnabled":true,"clientCertEnabled":false,"hostNamesDisabled":false,"domainVerificationIdentifiers":null,"kind":"app","outboundIpAddresses":"104.40.3.53,104.40.18.224,104.40.21.79,104.40.21.56,104.40.23.196","containerSize":0,"dailyMemoryTimeQuota":0,"suspendedTill":null,"siteDisabledReason":0,"functionExecutionUnitsCache":null,"maxNumberOfWorkers":null,"homeStamp":"waws-prod-bay-075","cloningInfo":null,"hostingEnvironmentId":null,"tags":null,"resourceGroup":"test_cli_webapp_ssl","defaultHostName":"webapp-ssl-test123.azurewebsites.net","slotSwapStatus":null}}'}
US","properties":{"name":"webapp-ssl-test123","state":"Running","hostNames":["webapp-ssl-test123.azurewebsites.net"],"webSpace":"test_cli_webapp_ssl-WestUSwebspace","selfLink":"https://waws-prod-bay-075.api.azurewebsites.windows.net:454/subscriptions/00000000-0000-0000-0000-000000000000/webspaces/test_cli_webapp_ssl-WestUSwebspace/sites/webapp-ssl-test123","repositorySiteName":"webapp-ssl-test123","owner":null,"usageState":"Normal","enabled":true,"adminEnabled":true,"enabledHostNames":["webapp-ssl-test123.azurewebsites.net","webapp-ssl-test123.scm.azurewebsites.net"],"siteProperties":{"metadata":null,"properties":[],"appSettings":null},"availabilityState":"Normal","sslCertificates":null,"csrs":[],"cers":null,"siteMode":null,"hostNameSslStates":[{"name":"webapp-ssl-test123.azurewebsites.net","sslState":"SniEnabled","ipBasedSslResult":null,"virtualIP":null,"thumbprint":"DB2BA6898D0B330A93E7F69FF505C61EF39921B6","toUpdate":null,"toUpdateIpBasedSsl":null,"ipBasedSslState":"NotConfigured","hostType":"Standard"},{"name":"webapp-ssl-test123.scm.azurewebsites.net","sslState":"Disabled","ipBasedSslResult":null,"virtualIP":null,"thumbprint":null,"toUpdate":null,"toUpdateIpBasedSsl":null,"ipBasedSslState":"NotConfigured","hostType":"Repository"}],"computeMode":null,"serverFarm":null,"serverFarmId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_cli_webapp_ssl/providers/Microsoft.Web/serverfarms/webapp-ssl-test-plan","reserved":false,"lastModifiedTimeUtc":"2017-05-02T23:18:58.1933333","storageRecoveryDefaultState":"Running","contentAvailabilityState":"Normal","runtimeAvailabilityState":"Normal","siteConfig":null,"deploymentId":"webapp-ssl-test123","trafficManagerHostNames":null,"sku":"Basic","premiumAppDeployed":null,"scmSiteAlsoStopped":false,"targetSwapSlot":null,"hostingEnvironment":null,"hostingEnvironmentProfile":null,"microService":"WebSites","gatewaySiteName":null,"clientAffinityEnabled":true,"clientCertEnabled":false,"hostNamesDisabled":false,"domainVerificationIdentifiers":null,"kind":"app","outboundIpAddresses":"104.40.3.53,104.40.18.224,104.40.21.79,104.40.21.56,104.40.23.196","containerSize":0,"dailyMemoryTimeQuota":0,"suspendedTill":null,"siteDisabledReason":0,"functionExecutionUnitsCache":null,"maxNumberOfWorkers":null,"homeStamp":"waws-prod-bay-075","cloningInfo":null,"hostingEnvironmentId":null,"tags":null,"resourceGroup":"test_cli_webapp_ssl","defaultHostName":"webapp-ssl-test123.azurewebsites.net","slotSwapStatus":null}}'}
headers:
Cache-Control: [no-cache]
Content-Type: [application/json]
Date: ['Fri, 28 Apr 2017 21:32:28 GMT']
ETag: ['"1D2C066EF07DEF5"']
Date: ['Tue, 02 May 2017 23:18:58 GMT']
ETag: ['"1D2C39A79BC5D15"']
Expires: ['-1']
Pragma: [no-cache]
Server: [Microsoft-IIS/8.0]
@ -328,7 +328,7 @@ interactions:
X-AspNet-Version: [4.0.30319]
X-Powered-By: [ASP.NET]
content-length: ['2756']
x-ms-ratelimit-remaining-subscription-writes: ['1196']
x-ms-ratelimit-remaining-subscription-writes: ['1198']
status: {code: 200, message: OK}
- request:
body: null
@ -338,19 +338,19 @@ interactions:
Connection: [keep-alive]
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.3 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 websitemanagementclient/0.32.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.3+dev]
msrest_azure/0.4.7 websitemanagementclient/0.32.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.4+dev]
accept-language: [en-US]
x-ms-client-request-id: [2e3e2e7e-2c5a-11e7-b59a-64510658e3b3]
x-ms-client-request-id: [b8bc1eb0-2f8d-11e7-9d35-64510658e3b3]
method: GET
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_cli_webapp_ssl/providers/Microsoft.Web/sites/webapp-ssl-test123?api-version=2016-08-01
response:
body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_cli_webapp_ssl/providers/Microsoft.Web/sites/webapp-ssl-test123","name":"webapp-ssl-test123","type":"Microsoft.Web/sites","kind":"app","location":"West
US","properties":{"name":"webapp-ssl-test123","state":"Running","hostNames":["webapp-ssl-test123.azurewebsites.net"],"webSpace":"test_cli_webapp_ssl-WestUSwebspace","selfLink":"https://waws-prod-bay-075.api.azurewebsites.windows.net:454/subscriptions/00000000-0000-0000-0000-000000000000/webspaces/test_cli_webapp_ssl-WestUSwebspace/sites/webapp-ssl-test123","repositorySiteName":"webapp-ssl-test123","owner":null,"usageState":"Normal","enabled":true,"adminEnabled":true,"enabledHostNames":["webapp-ssl-test123.azurewebsites.net","webapp-ssl-test123.scm.azurewebsites.net"],"siteProperties":{"metadata":null,"properties":[],"appSettings":null},"availabilityState":"Normal","sslCertificates":null,"csrs":[],"cers":null,"siteMode":null,"hostNameSslStates":[{"name":"webapp-ssl-test123.azurewebsites.net","sslState":"SniEnabled","ipBasedSslResult":null,"virtualIP":null,"thumbprint":"DB2BA6898D0B330A93E7F69FF505C61EF39921B6","toUpdate":null,"toUpdateIpBasedSsl":null,"ipBasedSslState":"NotConfigured","hostType":"Standard"},{"name":"webapp-ssl-test123.scm.azurewebsites.net","sslState":"Disabled","ipBasedSslResult":null,"virtualIP":null,"thumbprint":null,"toUpdate":null,"toUpdateIpBasedSsl":null,"ipBasedSslState":"NotConfigured","hostType":"Repository"}],"computeMode":null,"serverFarm":null,"serverFarmId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_cli_webapp_ssl/providers/Microsoft.Web/serverfarms/webapp-ssl-test-plan","reserved":false,"lastModifiedTimeUtc":"2017-04-28T21:32:27.6633333","storageRecoveryDefaultState":"Running","contentAvailabilityState":"Normal","runtimeAvailabilityState":"Normal","siteConfig":null,"deploymentId":"webapp-ssl-test123","trafficManagerHostNames":null,"sku":"Basic","premiumAppDeployed":null,"scmSiteAlsoStopped":false,"targetSwapSlot":null,"hostingEnvironment":null,"hostingEnvironmentProfile":null,"microService":"WebSites","gatewaySiteName":null,"clientAffinityEnabled":true,"clientCertEnabled":false,"hostNamesDisabled":false,"domainVerificationIdentifiers":null,"kind":"app","outboundIpAddresses":"104.40.3.53,104.40.18.224,104.40.21.79,104.40.21.56,104.40.23.196","containerSize":0,"dailyMemoryTimeQuota":0,"suspendedTill":null,"siteDisabledReason":0,"functionExecutionUnitsCache":null,"maxNumberOfWorkers":null,"homeStamp":"waws-prod-bay-075","cloningInfo":null,"hostingEnvironmentId":null,"tags":null,"resourceGroup":"test_cli_webapp_ssl","defaultHostName":"webapp-ssl-test123.azurewebsites.net","slotSwapStatus":null}}'}
US","properties":{"name":"webapp-ssl-test123","state":"Running","hostNames":["webapp-ssl-test123.azurewebsites.net"],"webSpace":"test_cli_webapp_ssl-WestUSwebspace","selfLink":"https://waws-prod-bay-075.api.azurewebsites.windows.net:454/subscriptions/00000000-0000-0000-0000-000000000000/webspaces/test_cli_webapp_ssl-WestUSwebspace/sites/webapp-ssl-test123","repositorySiteName":"webapp-ssl-test123","owner":null,"usageState":"Normal","enabled":true,"adminEnabled":true,"enabledHostNames":["webapp-ssl-test123.azurewebsites.net","webapp-ssl-test123.scm.azurewebsites.net"],"siteProperties":{"metadata":null,"properties":[],"appSettings":null},"availabilityState":"Normal","sslCertificates":null,"csrs":[],"cers":null,"siteMode":null,"hostNameSslStates":[{"name":"webapp-ssl-test123.azurewebsites.net","sslState":"SniEnabled","ipBasedSslResult":null,"virtualIP":null,"thumbprint":"DB2BA6898D0B330A93E7F69FF505C61EF39921B6","toUpdate":null,"toUpdateIpBasedSsl":null,"ipBasedSslState":"NotConfigured","hostType":"Standard"},{"name":"webapp-ssl-test123.scm.azurewebsites.net","sslState":"Disabled","ipBasedSslResult":null,"virtualIP":null,"thumbprint":null,"toUpdate":null,"toUpdateIpBasedSsl":null,"ipBasedSslState":"NotConfigured","hostType":"Repository"}],"computeMode":null,"serverFarm":null,"serverFarmId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_cli_webapp_ssl/providers/Microsoft.Web/serverfarms/webapp-ssl-test-plan","reserved":false,"lastModifiedTimeUtc":"2017-05-02T23:18:58.1933333","storageRecoveryDefaultState":"Running","contentAvailabilityState":"Normal","runtimeAvailabilityState":"Normal","siteConfig":null,"deploymentId":"webapp-ssl-test123","trafficManagerHostNames":null,"sku":"Basic","premiumAppDeployed":null,"scmSiteAlsoStopped":false,"targetSwapSlot":null,"hostingEnvironment":null,"hostingEnvironmentProfile":null,"microService":"WebSites","gatewaySiteName":null,"clientAffinityEnabled":true,"clientCertEnabled":false,"hostNamesDisabled":false,"domainVerificationIdentifiers":null,"kind":"app","outboundIpAddresses":"104.40.3.53,104.40.18.224,104.40.21.79,104.40.21.56,104.40.23.196","containerSize":0,"dailyMemoryTimeQuota":0,"suspendedTill":null,"siteDisabledReason":0,"functionExecutionUnitsCache":null,"maxNumberOfWorkers":null,"homeStamp":"waws-prod-bay-075","cloningInfo":null,"hostingEnvironmentId":null,"tags":null,"resourceGroup":"test_cli_webapp_ssl","defaultHostName":"webapp-ssl-test123.azurewebsites.net","slotSwapStatus":null}}'}
headers:
Cache-Control: [no-cache]
Content-Type: [application/json]
Date: ['Fri, 28 Apr 2017 21:32:29 GMT']
ETag: ['"1D2C066EF07DEF5"']
Date: ['Tue, 02 May 2017 23:19:00 GMT']
ETag: ['"1D2C39A79BC5D15"']
Expires: ['-1']
Pragma: [no-cache]
Server: [Microsoft-IIS/8.0]
@ -369,9 +369,9 @@ interactions:
Connection: [keep-alive]
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.3 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 websitemanagementclient/0.32.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.3+dev]
msrest_azure/0.4.7 websitemanagementclient/0.32.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.4+dev]
accept-language: [en-US]
x-ms-client-request-id: [2e67af70-2c5a-11e7-adb9-64510658e3b3]
x-ms-client-request-id: [b962ff3a-2f8d-11e7-a0b4-64510658e3b3]
method: GET
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_cli_webapp_ssl/providers/Microsoft.Web/certificates?api-version=2016-03-01
response:
@ -382,7 +382,7 @@ interactions:
headers:
Cache-Control: [no-cache]
Content-Type: [application/json]
Date: ['Fri, 28 Apr 2017 21:32:30 GMT']
Date: ['Tue, 02 May 2017 23:19:00 GMT']
Expires: ['-1']
Pragma: [no-cache]
Server: [Microsoft-IIS/8.0]
@ -394,10 +394,10 @@ interactions:
content-length: ['1032']
status: {code: 200, message: OK}
- request:
body: '{"properties": {"hostNameSslStates": [{"toUpdate": true, "thumbprint":
"DB2BA6898D0B330A93E7F69FF505C61EF39921B6", "name": "webapp-ssl-test123.azurewebsites.net",
"sslState": "Disabled"}], "scmSiteAlsoStopped": false, "microService": "WebSites",
"reserved": false}, "location": "West US"}'
body: '{"properties": {"scmSiteAlsoStopped": false, "microService": "WebSites",
"reserved": false, "hostNameSslStates": [{"sslState": "Disabled", "toUpdate":
true, "name": "webapp-ssl-test123.azurewebsites.net", "thumbprint": "DB2BA6898D0B330A93E7F69FF505C61EF39921B6"}]},
"location": "West US"}'
headers:
Accept: [application/json]
Accept-Encoding: ['gzip, deflate']
@ -405,19 +405,19 @@ interactions:
Content-Length: ['288']
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.3 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 websitemanagementclient/0.32.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.3+dev]
msrest_azure/0.4.7 websitemanagementclient/0.32.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.4+dev]
accept-language: [en-US]
x-ms-client-request-id: [2eef077a-2c5a-11e7-a8c3-64510658e3b3]
x-ms-client-request-id: [b9eeec10-2f8d-11e7-af7b-64510658e3b3]
method: PUT
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_cli_webapp_ssl/providers/Microsoft.Web/sites/webapp-ssl-test123?api-version=2016-08-01
response:
body: {string: '{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_cli_webapp_ssl/providers/Microsoft.Web/sites/webapp-ssl-test123","name":"webapp-ssl-test123","type":"Microsoft.Web/sites","kind":"app","location":"West
US","properties":{"name":"webapp-ssl-test123","state":"Running","hostNames":["webapp-ssl-test123.azurewebsites.net"],"webSpace":"test_cli_webapp_ssl-WestUSwebspace","selfLink":"https://waws-prod-bay-075.api.azurewebsites.windows.net:454/subscriptions/00000000-0000-0000-0000-000000000000/webspaces/test_cli_webapp_ssl-WestUSwebspace/sites/webapp-ssl-test123","repositorySiteName":"webapp-ssl-test123","owner":null,"usageState":"Normal","enabled":true,"adminEnabled":true,"enabledHostNames":["webapp-ssl-test123.azurewebsites.net","webapp-ssl-test123.scm.azurewebsites.net"],"siteProperties":{"metadata":null,"properties":[],"appSettings":null},"availabilityState":"Normal","sslCertificates":null,"csrs":[],"cers":null,"siteMode":null,"hostNameSslStates":[{"name":"webapp-ssl-test123.azurewebsites.net","sslState":"Disabled","ipBasedSslResult":null,"virtualIP":null,"thumbprint":null,"toUpdate":null,"toUpdateIpBasedSsl":null,"ipBasedSslState":"NotConfigured","hostType":"Standard"},{"name":"webapp-ssl-test123.scm.azurewebsites.net","sslState":"Disabled","ipBasedSslResult":null,"virtualIP":null,"thumbprint":null,"toUpdate":null,"toUpdateIpBasedSsl":null,"ipBasedSslState":"NotConfigured","hostType":"Repository"}],"computeMode":null,"serverFarm":null,"serverFarmId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_cli_webapp_ssl/providers/Microsoft.Web/serverfarms/webapp-ssl-test-plan","reserved":false,"lastModifiedTimeUtc":"2017-04-28T21:32:30.9933333","storageRecoveryDefaultState":"Running","contentAvailabilityState":"Normal","runtimeAvailabilityState":"Normal","siteConfig":null,"deploymentId":"webapp-ssl-test123","trafficManagerHostNames":null,"sku":"Basic","premiumAppDeployed":null,"scmSiteAlsoStopped":false,"targetSwapSlot":null,"hostingEnvironment":null,"hostingEnvironmentProfile":null,"microService":"WebSites","gatewaySiteName":null,"clientAffinityEnabled":true,"clientCertEnabled":false,"hostNamesDisabled":false,"domainVerificationIdentifiers":null,"kind":"app","outboundIpAddresses":"104.40.3.53,104.40.18.224,104.40.21.79,104.40.21.56,104.40.23.196","containerSize":0,"dailyMemoryTimeQuota":0,"suspendedTill":null,"siteDisabledReason":0,"functionExecutionUnitsCache":null,"maxNumberOfWorkers":null,"homeStamp":"waws-prod-bay-075","cloningInfo":null,"hostingEnvironmentId":null,"tags":null,"resourceGroup":"test_cli_webapp_ssl","defaultHostName":"webapp-ssl-test123.azurewebsites.net","slotSwapStatus":null}}'}
US","properties":{"name":"webapp-ssl-test123","state":"Running","hostNames":["webapp-ssl-test123.azurewebsites.net"],"webSpace":"test_cli_webapp_ssl-WestUSwebspace","selfLink":"https://waws-prod-bay-075.api.azurewebsites.windows.net:454/subscriptions/00000000-0000-0000-0000-000000000000/webspaces/test_cli_webapp_ssl-WestUSwebspace/sites/webapp-ssl-test123","repositorySiteName":"webapp-ssl-test123","owner":null,"usageState":"Normal","enabled":true,"adminEnabled":true,"enabledHostNames":["webapp-ssl-test123.azurewebsites.net","webapp-ssl-test123.scm.azurewebsites.net"],"siteProperties":{"metadata":null,"properties":[],"appSettings":null},"availabilityState":"Normal","sslCertificates":null,"csrs":[],"cers":null,"siteMode":null,"hostNameSslStates":[{"name":"webapp-ssl-test123.azurewebsites.net","sslState":"Disabled","ipBasedSslResult":null,"virtualIP":null,"thumbprint":null,"toUpdate":null,"toUpdateIpBasedSsl":null,"ipBasedSslState":"NotConfigured","hostType":"Standard"},{"name":"webapp-ssl-test123.scm.azurewebsites.net","sslState":"Disabled","ipBasedSslResult":null,"virtualIP":null,"thumbprint":null,"toUpdate":null,"toUpdateIpBasedSsl":null,"ipBasedSslState":"NotConfigured","hostType":"Repository"}],"computeMode":null,"serverFarm":null,"serverFarmId":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_cli_webapp_ssl/providers/Microsoft.Web/serverfarms/webapp-ssl-test-plan","reserved":false,"lastModifiedTimeUtc":"2017-05-02T23:19:01.85","storageRecoveryDefaultState":"Running","contentAvailabilityState":"Normal","runtimeAvailabilityState":"Normal","siteConfig":null,"deploymentId":"webapp-ssl-test123","trafficManagerHostNames":null,"sku":"Basic","premiumAppDeployed":null,"scmSiteAlsoStopped":false,"targetSwapSlot":null,"hostingEnvironment":null,"hostingEnvironmentProfile":null,"microService":"WebSites","gatewaySiteName":null,"clientAffinityEnabled":true,"clientCertEnabled":false,"hostNamesDisabled":false,"domainVerificationIdentifiers":null,"kind":"app","outboundIpAddresses":"104.40.3.53,104.40.18.224,104.40.21.79,104.40.21.56,104.40.23.196","containerSize":0,"dailyMemoryTimeQuota":0,"suspendedTill":null,"siteDisabledReason":0,"functionExecutionUnitsCache":null,"maxNumberOfWorkers":null,"homeStamp":"waws-prod-bay-075","cloningInfo":null,"hostingEnvironmentId":null,"tags":null,"resourceGroup":"test_cli_webapp_ssl","defaultHostName":"webapp-ssl-test123.azurewebsites.net","slotSwapStatus":null}}'}
headers:
Cache-Control: [no-cache]
Content-Type: [application/json]
Date: ['Fri, 28 Apr 2017 21:32:32 GMT']
ETag: ['"1D2C066F103FD15"']
Date: ['Tue, 02 May 2017 23:19:02 GMT']
ETag: ['"1D2C39A7BEA53A0"']
Expires: ['-1']
Pragma: [no-cache]
Server: [Microsoft-IIS/8.0]
@ -426,8 +426,8 @@ interactions:
Vary: [Accept-Encoding]
X-AspNet-Version: [4.0.30319]
X-Powered-By: [ASP.NET]
content-length: ['2716']
x-ms-ratelimit-remaining-subscription-writes: ['1194']
content-length: ['2711']
x-ms-ratelimit-remaining-subscription-writes: ['1199']
status: {code: 200, message: OK}
- request:
body: null
@ -437,9 +437,9 @@ interactions:
Connection: [keep-alive]
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.3 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 websitemanagementclient/0.32.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.3+dev]
msrest_azure/0.4.7 websitemanagementclient/0.32.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.4+dev]
accept-language: [en-US]
x-ms-client-request-id: [30bc99fa-2c5a-11e7-9885-64510658e3b3]
x-ms-client-request-id: [bb25ddde-2f8d-11e7-9c96-64510658e3b3]
method: GET
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_cli_webapp_ssl/providers/Microsoft.Web/certificates?api-version=2016-03-01
response:
@ -450,7 +450,7 @@ interactions:
headers:
Cache-Control: [no-cache]
Content-Type: [application/json]
Date: ['Fri, 28 Apr 2017 21:32:33 GMT']
Date: ['Tue, 02 May 2017 23:19:02 GMT']
Expires: ['-1']
Pragma: [no-cache]
Server: [Microsoft-IIS/8.0]
@ -470,9 +470,9 @@ interactions:
Content-Length: ['0']
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.3 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 websitemanagementclient/0.32.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.3+dev]
msrest_azure/0.4.7 websitemanagementclient/0.32.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.4+dev]
accept-language: [en-US]
x-ms-client-request-id: [312a76ae-2c5a-11e7-b3b7-64510658e3b3]
x-ms-client-request-id: [bb49e086-2f8d-11e7-9847-64510658e3b3]
method: DELETE
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_cli_webapp_ssl/providers/Microsoft.Web/certificates/DB2BA6898D0B330A93E7F69FF505C61EF39921B6__West%20US_test_cli_webapp_ssl?api-version=2016-03-01
response:
@ -480,7 +480,7 @@ interactions:
headers:
Cache-Control: [no-cache]
Content-Length: ['0']
Date: ['Fri, 28 Apr 2017 21:32:34 GMT']
Date: ['Tue, 02 May 2017 23:19:04 GMT']
Expires: ['-1']
Pragma: [no-cache]
Server: [Microsoft-IIS/8.0]
@ -498,9 +498,9 @@ interactions:
Content-Length: ['0']
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/3.5.3 (Windows-10-10.0.14393-SP0) requests/2.9.1 msrest/0.4.7
msrest_azure/0.4.7 websitemanagementclient/0.32.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.3+dev]
msrest_azure/0.4.7 websitemanagementclient/0.32.0 Azure-SDK-For-Python AZURECLI/TEST/2.0.4+dev]
accept-language: [en-US]
x-ms-client-request-id: [31df2022-2c5a-11e7-b969-64510658e3b3]
x-ms-client-request-id: [bc00406c-2f8d-11e7-993f-64510658e3b3]
method: DELETE
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_cli_webapp_ssl/providers/Microsoft.Web/sites/webapp-ssl-test123?api-version=2016-08-01
response:
@ -508,14 +508,14 @@ interactions:
headers:
Cache-Control: [no-cache]
Content-Length: ['0']
Date: ['Fri, 28 Apr 2017 21:32:36 GMT']
ETag: ['"1D2C066F103FD15"']
Date: ['Tue, 02 May 2017 23:19:08 GMT']
ETag: ['"1D2C39A7BEA53A0"']
Expires: ['-1']
Pragma: [no-cache]
Server: [Microsoft-IIS/8.0]
Strict-Transport-Security: [max-age=31536000; includeSubDomains]
X-AspNet-Version: [4.0.30319]
X-Powered-By: [ASP.NET]
x-ms-ratelimit-remaining-subscription-writes: ['1198']
x-ms-ratelimit-remaining-subscription-writes: ['1199']
status: {code: 200, message: OK}
version: 1

Просмотреть файл

@ -599,5 +599,54 @@ class WebappBackupRestoreScenarioTest(ResourceGroupVCRTestBase):
.format(self.resource_group, self.webapp_name, sas_url, backup_name, db_conn_str, database_name, database_type), checks=JMESPathCheck('name', self.webapp_name))
class FunctionAppWithPlanE2ETest(ResourceGroupVCRTestBase):
def __init__(self, test_method):
super(FunctionAppWithPlanE2ETest, self).__init__(__file__, test_method, resource_group='azurecli-functionapp-e2e')
def test_functionapp_asp_e2e(self):
self.execute()
def body(self):
functionapp_name = 'functionapp-e2e3'
plan = 'functionapp-e2e-plan'
storage = 'functionappplanstorage'
self.cmd('appservice plan create -g {} -n {}'.format(self.resource_group, plan))
self.cmd('appservice plan list -g {}'.format(self.resource_group))
self.cmd('storage account create --name {} -g {} -l westus --sku Standard_LRS'.format(storage, self.resource_group))
self.cmd('functionapp create -g {} -n {} -p {} -s {}'.format(self.resource_group, functionapp_name, plan, storage), checks=[
JMESPathCheck('state', 'Running'),
JMESPathCheck('name', functionapp_name),
JMESPathCheck('hostNames[0]', functionapp_name + '.azurewebsites.net')
])
self.cmd('functionapp delete -g {} -n {}'.format(self.resource_group, functionapp_name))
class FunctionAppWithConsumptionPlanE2ETest(ResourceGroupVCRTestBase):
def __init__(self, test_method):
super(FunctionAppWithConsumptionPlanE2ETest, self).__init__(__file__, test_method, resource_group='azurecli-functionapp-c-e2e')
def test_functionapp_consumption_e2e(self):
self.execute()
def body(self):
functionapp_name = 'functionappconsumption'
location = 'westus'
storage = 'functionaconstorage'
self.cmd('storage account create --name {} -g {} -l {} --sku Standard_LRS'.format(storage, self.resource_group, location))
self.cmd('functionapp create -g {} -n {} -c {} -s {}'.format(self.resource_group, functionapp_name, location, storage), checks=[
JMESPathCheck('state', 'Running'),
JMESPathCheck('name', functionapp_name),
JMESPathCheck('hostNames[0]', functionapp_name + '.azurewebsites.net')
])
self.cmd('functionapp delete -g {} -n {}'.format(self.resource_group, functionapp_name))
if __name__ == '__main__':
unittest.main()