# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for
# license information.
#
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------
from msrest.serialization import Model
from msrest.exceptions import HttpOperationError
[docs]class AbnormalTimePeriod(Model):
"""Class representing Abnormal Time Period identified in diagnosis.
:param start_time: Start time of the downtime
:type start_time: datetime
:param end_time: End time of the downtime
:type end_time: datetime
:param events: List of Possible Cause of downtime
:type events:
list[~azure.mgmt.web.v2016_03_01.models.DetectorAbnormalTimePeriod]
:param solutions: List of proposed solutions
:type solutions: list[~azure.mgmt.web.v2016_03_01.models.Solution]
"""
_attribute_map = {
'start_time': {'key': 'startTime', 'type': 'iso-8601'},
'end_time': {'key': 'endTime', 'type': 'iso-8601'},
'events': {'key': 'events', 'type': '[DetectorAbnormalTimePeriod]'},
'solutions': {'key': 'solutions', 'type': '[Solution]'},
}
def __init__(self, *, start_time=None, end_time=None, events=None, solutions=None, **kwargs) -> None:
super(AbnormalTimePeriod, self).__init__(**kwargs)
self.start_time = start_time
self.end_time = end_time
self.events = events
self.solutions = solutions
[docs]class AnalysisData(Model):
"""Class Representing Detector Evidence used for analysis.
:param source: Name of the Detector
:type source: str
:param detector_definition: Detector Definition
:type detector_definition:
~azure.mgmt.web.v2016_03_01.models.DetectorDefinition
:param metrics: Source Metrics
:type metrics:
list[~azure.mgmt.web.v2016_03_01.models.DiagnosticMetricSet]
:param data: Additional Source Data
:type data: list[list[~azure.mgmt.web.v2016_03_01.models.NameValuePair]]
:param detector_meta_data: Detector Meta Data
:type detector_meta_data:
~azure.mgmt.web.v2016_03_01.models.ResponseMetaData
"""
_attribute_map = {
'source': {'key': 'source', 'type': 'str'},
'detector_definition': {'key': 'detectorDefinition', 'type': 'DetectorDefinition'},
'metrics': {'key': 'metrics', 'type': '[DiagnosticMetricSet]'},
'data': {'key': 'data', 'type': '[[NameValuePair]]'},
'detector_meta_data': {'key': 'detectorMetaData', 'type': 'ResponseMetaData'},
}
def __init__(self, *, source: str=None, detector_definition=None, metrics=None, data=None, detector_meta_data=None, **kwargs) -> None:
super(AnalysisData, self).__init__(**kwargs)
self.source = source
self.detector_definition = detector_definition
self.metrics = metrics
self.data = data
self.detector_meta_data = detector_meta_data
[docs]class ProxyOnlyResource(Model):
"""Azure proxy only resource. This resource is not tracked by Azure Resource
Manager.
Variables are only populated by the server, and will be ignored when
sending a request.
:ivar id: Resource Id.
:vartype id: str
:ivar name: Resource Name.
:vartype name: str
:param kind: Kind of resource.
:type kind: str
:ivar type: Resource type.
:vartype type: str
"""
_validation = {
'id': {'readonly': True},
'name': {'readonly': True},
'type': {'readonly': True},
}
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'kind': {'key': 'kind', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
}
def __init__(self, *, kind: str=None, **kwargs) -> None:
super(ProxyOnlyResource, self).__init__(**kwargs)
self.id = None
self.name = None
self.kind = kind
self.type = None
[docs]class AnalysisDefinition(ProxyOnlyResource):
"""Definition of Analysis.
Variables are only populated by the server, and will be ignored when
sending a request.
:ivar id: Resource Id.
:vartype id: str
:ivar name: Resource Name.
:vartype name: str
:param kind: Kind of resource.
:type kind: str
:ivar type: Resource type.
:vartype type: str
:ivar description: Description of the Analysis
:vartype description: str
"""
_validation = {
'id': {'readonly': True},
'name': {'readonly': True},
'type': {'readonly': True},
'description': {'readonly': True},
}
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'kind': {'key': 'kind', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
'description': {'key': 'properties.description', 'type': 'str'},
}
def __init__(self, *, kind: str=None, **kwargs) -> None:
super(AnalysisDefinition, self).__init__(kind=kind, **kwargs)
self.description = None
[docs]class ApiDefinitionInfo(Model):
"""Information about the formal API definition for the app.
:param url: The URL of the API definition.
:type url: str
"""
_attribute_map = {
'url': {'key': 'url', 'type': 'str'},
}
def __init__(self, *, url: str=None, **kwargs) -> None:
super(ApiDefinitionInfo, self).__init__(**kwargs)
self.url = url
[docs]class ApplicationStack(Model):
"""Application stack.
:param name: Application stack name.
:type name: str
:param display: Application stack display name.
:type display: str
:param dependency: Application stack dependency.
:type dependency: str
:param major_versions: List of major versions available.
:type major_versions:
list[~azure.mgmt.web.v2016_03_01.models.StackMajorVersion]
:param frameworks: List of frameworks associated with application stack.
:type frameworks:
list[~azure.mgmt.web.v2016_03_01.models.ApplicationStack]
"""
_attribute_map = {
'name': {'key': 'name', 'type': 'str'},
'display': {'key': 'display', 'type': 'str'},
'dependency': {'key': 'dependency', 'type': 'str'},
'major_versions': {'key': 'majorVersions', 'type': '[StackMajorVersion]'},
'frameworks': {'key': 'frameworks', 'type': '[ApplicationStack]'},
}
def __init__(self, *, name: str=None, display: str=None, dependency: str=None, major_versions=None, frameworks=None, **kwargs) -> None:
super(ApplicationStack, self).__init__(**kwargs)
self.name = name
self.display = display
self.dependency = dependency
self.major_versions = major_versions
self.frameworks = frameworks
[docs]class AppServiceEnvironment(Model):
"""Description of an App Service Environment.
Variables are only populated by the server, and will be ignored when
sending a request.
All required parameters must be populated in order to send to Azure.
:param name: Required. Name of the App Service Environment.
:type name: str
:param location: Required. Location of the App Service Environment, e.g.
"West US".
:type location: str
:ivar provisioning_state: Provisioning state of the App Service
Environment. Possible values include: 'Succeeded', 'Failed', 'Canceled',
'InProgress', 'Deleting'
:vartype provisioning_state: str or
~azure.mgmt.web.v2016_03_01.models.ProvisioningState
:ivar status: Current status of the App Service Environment. Possible
values include: 'Preparing', 'Ready', 'Scaling', 'Deleting'
:vartype status: str or
~azure.mgmt.web.v2016_03_01.models.HostingEnvironmentStatus
:param vnet_name: Name of the Virtual Network for the App Service
Environment.
:type vnet_name: str
:param vnet_resource_group_name: Resource group of the Virtual Network.
:type vnet_resource_group_name: str
:param vnet_subnet_name: Subnet of the Virtual Network.
:type vnet_subnet_name: str
:param virtual_network: Required. Description of the Virtual Network.
:type virtual_network:
~azure.mgmt.web.v2016_03_01.models.VirtualNetworkProfile
:param internal_load_balancing_mode: Specifies which endpoints to serve
internally in the Virtual Network for the App Service Environment.
Possible values include: 'None', 'Web', 'Publishing'
:type internal_load_balancing_mode: str or
~azure.mgmt.web.v2016_03_01.models.InternalLoadBalancingMode
:param multi_size: Front-end VM size, e.g. "Medium", "Large".
:type multi_size: str
:param multi_role_count: Number of front-end instances.
:type multi_role_count: int
:param worker_pools: Required. Description of worker pools with worker
size IDs, VM sizes, and number of workers in each pool.
:type worker_pools: list[~azure.mgmt.web.v2016_03_01.models.WorkerPool]
:param ipssl_address_count: Number of IP SSL addresses reserved for the
App Service Environment.
:type ipssl_address_count: int
:ivar database_edition: Edition of the metadata database for the App
Service Environment, e.g. "Standard".
:vartype database_edition: str
:ivar database_service_objective: Service objective of the metadata
database for the App Service Environment, e.g. "S0".
:vartype database_service_objective: str
:ivar upgrade_domains: Number of upgrade domains of the App Service
Environment.
:vartype upgrade_domains: int
:ivar subscription_id: Subscription of the App Service Environment.
:vartype subscription_id: str
:param dns_suffix: DNS suffix of the App Service Environment.
:type dns_suffix: str
:ivar last_action: Last deployment action on the App Service Environment.
:vartype last_action: str
:ivar last_action_result: Result of the last deployment action on the App
Service Environment.
:vartype last_action_result: str
:ivar allowed_multi_sizes: List of comma separated strings describing
which VM sizes are allowed for front-ends.
:vartype allowed_multi_sizes: str
:ivar allowed_worker_sizes: List of comma separated strings describing
which VM sizes are allowed for workers.
:vartype allowed_worker_sizes: str
:ivar maximum_number_of_machines: Maximum number of VMs in the App Service
Environment.
:vartype maximum_number_of_machines: int
:ivar vip_mappings: Description of IP SSL mapping for the App Service
Environment.
:vartype vip_mappings:
list[~azure.mgmt.web.v2016_03_01.models.VirtualIPMapping]
:ivar environment_capacities: Current total, used, and available worker
capacities.
:vartype environment_capacities:
list[~azure.mgmt.web.v2016_03_01.models.StampCapacity]
:param network_access_control_list: Access control list for controlling
traffic to the App Service Environment.
:type network_access_control_list:
list[~azure.mgmt.web.v2016_03_01.models.NetworkAccessControlEntry]
:ivar environment_is_healthy: True/false indicating whether the App
Service Environment is healthy.
:vartype environment_is_healthy: bool
:ivar environment_status: Detailed message about with results of the last
check of the App Service Environment.
:vartype environment_status: str
:ivar resource_group: Resource group of the App Service Environment.
:vartype resource_group: str
:param front_end_scale_factor: Scale factor for front-ends.
:type front_end_scale_factor: int
:ivar default_front_end_scale_factor: Default Scale Factor for FrontEnds.
:vartype default_front_end_scale_factor: int
:param api_management_account_id: API Management Account associated with
the App Service Environment.
:type api_management_account_id: str
:param suspended: <code>true</code> if the App Service Environment is
suspended; otherwise, <code>false</code>. The environment can be
suspended, e.g. when the management endpoint is no longer available
(most likely because NSG blocked the incoming traffic).
:type suspended: bool
:param dynamic_cache_enabled: True/false indicating whether the App
Service Environment is suspended. The environment can be suspended e.g.
when the management endpoint is no longer available
(most likely because NSG blocked the incoming traffic).
:type dynamic_cache_enabled: bool
:param cluster_settings: Custom settings for changing the behavior of the
App Service Environment.
:type cluster_settings:
list[~azure.mgmt.web.v2016_03_01.models.NameValuePair]
:param user_whitelisted_ip_ranges: User added ip ranges to whitelist on
ASE db
:type user_whitelisted_ip_ranges: list[str]
"""
_validation = {
'name': {'required': True},
'location': {'required': True},
'provisioning_state': {'readonly': True},
'status': {'readonly': True},
'virtual_network': {'required': True},
'worker_pools': {'required': True},
'database_edition': {'readonly': True},
'database_service_objective': {'readonly': True},
'upgrade_domains': {'readonly': True},
'subscription_id': {'readonly': True},
'last_action': {'readonly': True},
'last_action_result': {'readonly': True},
'allowed_multi_sizes': {'readonly': True},
'allowed_worker_sizes': {'readonly': True},
'maximum_number_of_machines': {'readonly': True},
'vip_mappings': {'readonly': True},
'environment_capacities': {'readonly': True},
'environment_is_healthy': {'readonly': True},
'environment_status': {'readonly': True},
'resource_group': {'readonly': True},
'default_front_end_scale_factor': {'readonly': True},
}
_attribute_map = {
'name': {'key': 'name', 'type': 'str'},
'location': {'key': 'location', 'type': 'str'},
'provisioning_state': {'key': 'provisioningState', 'type': 'ProvisioningState'},
'status': {'key': 'status', 'type': 'HostingEnvironmentStatus'},
'vnet_name': {'key': 'vnetName', 'type': 'str'},
'vnet_resource_group_name': {'key': 'vnetResourceGroupName', 'type': 'str'},
'vnet_subnet_name': {'key': 'vnetSubnetName', 'type': 'str'},
'virtual_network': {'key': 'virtualNetwork', 'type': 'VirtualNetworkProfile'},
'internal_load_balancing_mode': {'key': 'internalLoadBalancingMode', 'type': 'InternalLoadBalancingMode'},
'multi_size': {'key': 'multiSize', 'type': 'str'},
'multi_role_count': {'key': 'multiRoleCount', 'type': 'int'},
'worker_pools': {'key': 'workerPools', 'type': '[WorkerPool]'},
'ipssl_address_count': {'key': 'ipsslAddressCount', 'type': 'int'},
'database_edition': {'key': 'databaseEdition', 'type': 'str'},
'database_service_objective': {'key': 'databaseServiceObjective', 'type': 'str'},
'upgrade_domains': {'key': 'upgradeDomains', 'type': 'int'},
'subscription_id': {'key': 'subscriptionId', 'type': 'str'},
'dns_suffix': {'key': 'dnsSuffix', 'type': 'str'},
'last_action': {'key': 'lastAction', 'type': 'str'},
'last_action_result': {'key': 'lastActionResult', 'type': 'str'},
'allowed_multi_sizes': {'key': 'allowedMultiSizes', 'type': 'str'},
'allowed_worker_sizes': {'key': 'allowedWorkerSizes', 'type': 'str'},
'maximum_number_of_machines': {'key': 'maximumNumberOfMachines', 'type': 'int'},
'vip_mappings': {'key': 'vipMappings', 'type': '[VirtualIPMapping]'},
'environment_capacities': {'key': 'environmentCapacities', 'type': '[StampCapacity]'},
'network_access_control_list': {'key': 'networkAccessControlList', 'type': '[NetworkAccessControlEntry]'},
'environment_is_healthy': {'key': 'environmentIsHealthy', 'type': 'bool'},
'environment_status': {'key': 'environmentStatus', 'type': 'str'},
'resource_group': {'key': 'resourceGroup', 'type': 'str'},
'front_end_scale_factor': {'key': 'frontEndScaleFactor', 'type': 'int'},
'default_front_end_scale_factor': {'key': 'defaultFrontEndScaleFactor', 'type': 'int'},
'api_management_account_id': {'key': 'apiManagementAccountId', 'type': 'str'},
'suspended': {'key': 'suspended', 'type': 'bool'},
'dynamic_cache_enabled': {'key': 'dynamicCacheEnabled', 'type': 'bool'},
'cluster_settings': {'key': 'clusterSettings', 'type': '[NameValuePair]'},
'user_whitelisted_ip_ranges': {'key': 'userWhitelistedIpRanges', 'type': '[str]'},
}
def __init__(self, *, name: str, location: str, virtual_network, worker_pools, vnet_name: str=None, vnet_resource_group_name: str=None, vnet_subnet_name: str=None, internal_load_balancing_mode=None, multi_size: str=None, multi_role_count: int=None, ipssl_address_count: int=None, dns_suffix: str=None, network_access_control_list=None, front_end_scale_factor: int=None, api_management_account_id: str=None, suspended: bool=None, dynamic_cache_enabled: bool=None, cluster_settings=None, user_whitelisted_ip_ranges=None, **kwargs) -> None:
super(AppServiceEnvironment, self).__init__(**kwargs)
self.name = name
self.location = location
self.provisioning_state = None
self.status = None
self.vnet_name = vnet_name
self.vnet_resource_group_name = vnet_resource_group_name
self.vnet_subnet_name = vnet_subnet_name
self.virtual_network = virtual_network
self.internal_load_balancing_mode = internal_load_balancing_mode
self.multi_size = multi_size
self.multi_role_count = multi_role_count
self.worker_pools = worker_pools
self.ipssl_address_count = ipssl_address_count
self.database_edition = None
self.database_service_objective = None
self.upgrade_domains = None
self.subscription_id = None
self.dns_suffix = dns_suffix
self.last_action = None
self.last_action_result = None
self.allowed_multi_sizes = None
self.allowed_worker_sizes = None
self.maximum_number_of_machines = None
self.vip_mappings = None
self.environment_capacities = None
self.network_access_control_list = network_access_control_list
self.environment_is_healthy = None
self.environment_status = None
self.resource_group = None
self.front_end_scale_factor = front_end_scale_factor
self.default_front_end_scale_factor = None
self.api_management_account_id = api_management_account_id
self.suspended = suspended
self.dynamic_cache_enabled = dynamic_cache_enabled
self.cluster_settings = cluster_settings
self.user_whitelisted_ip_ranges = user_whitelisted_ip_ranges
[docs]class Resource(Model):
"""Azure resource. This resource is tracked in Azure Resource Manager.
Variables are only populated by the server, and will be ignored when
sending a request.
All required parameters must be populated in order to send to Azure.
:ivar id: Resource Id.
:vartype id: str
:ivar name: Resource Name.
:vartype name: str
:param kind: Kind of resource.
:type kind: str
:param location: Required. Resource Location.
:type location: str
:ivar type: Resource type.
:vartype type: str
:param tags: Resource tags.
:type tags: dict[str, str]
"""
_validation = {
'id': {'readonly': True},
'name': {'readonly': True},
'location': {'required': True},
'type': {'readonly': True},
}
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'kind': {'key': 'kind', 'type': 'str'},
'location': {'key': 'location', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
'tags': {'key': 'tags', 'type': '{str}'},
}
def __init__(self, *, location: str, kind: str=None, tags=None, **kwargs) -> None:
super(Resource, self).__init__(**kwargs)
self.id = None
self.name = None
self.kind = kind
self.location = location
self.type = None
self.tags = tags
[docs]class AppServicePlan(Resource):
"""App Service plan.
Variables are only populated by the server, and will be ignored when
sending a request.
All required parameters must be populated in order to send to Azure.
:ivar id: Resource Id.
:vartype id: str
:ivar name: Resource Name.
:vartype name: str
:param kind: Kind of resource.
:type kind: str
:param location: Required. Resource Location.
:type location: str
:ivar type: Resource type.
:vartype type: str
:param tags: Resource tags.
:type tags: dict[str, str]
:param app_service_plan_name: Required. Name for the App Service plan.
:type app_service_plan_name: str
:param worker_tier_name: Target worker tier assigned to the App Service
plan.
:type worker_tier_name: str
:ivar status: App Service plan status. Possible values include: 'Ready',
'Pending', 'Creating'
:vartype status: str or ~azure.mgmt.web.v2016_03_01.models.StatusOptions
:ivar subscription: App Service plan subscription.
:vartype subscription: str
:param admin_site_name: App Service plan administration site.
:type admin_site_name: str
:param hosting_environment_profile: Specification for the App Service
Environment to use for the App Service plan.
:type hosting_environment_profile:
~azure.mgmt.web.v2016_03_01.models.HostingEnvironmentProfile
:ivar maximum_number_of_workers: Maximum number of instances that can be
assigned to this App Service plan.
:vartype maximum_number_of_workers: int
:ivar geo_region: Geographical location for the App Service plan.
:vartype geo_region: str
:param per_site_scaling: If <code>true</code>, apps assigned to this App
Service plan can be scaled independently.
If <code>false</code>, apps assigned to this App Service plan will scale
to all instances of the plan. Default value: False .
:type per_site_scaling: bool
:ivar number_of_sites: Number of apps assigned to this App Service plan.
:vartype number_of_sites: int
:param is_spot: If <code>true</code>, this App Service Plan owns spot
instances.
:type is_spot: bool
:param spot_expiration_time: The time when the server farm expires. Valid
only if it is a spot server farm.
:type spot_expiration_time: datetime
:ivar resource_group: Resource group of the App Service plan.
:vartype resource_group: str
:param reserved: If Linux app service plan <code>true</code>,
<code>false</code> otherwise. Default value: False .
:type reserved: bool
:param target_worker_count: Scaling worker count.
:type target_worker_count: int
:param target_worker_size_id: Scaling worker size ID.
:type target_worker_size_id: int
:ivar provisioning_state: Provisioning state of the App Service
Environment. Possible values include: 'Succeeded', 'Failed', 'Canceled',
'InProgress', 'Deleting'
:vartype provisioning_state: str or
~azure.mgmt.web.v2016_03_01.models.ProvisioningState
:param sku:
:type sku: ~azure.mgmt.web.v2016_03_01.models.SkuDescription
"""
_validation = {
'id': {'readonly': True},
'name': {'readonly': True},
'location': {'required': True},
'type': {'readonly': True},
'app_service_plan_name': {'required': True},
'status': {'readonly': True},
'subscription': {'readonly': True},
'maximum_number_of_workers': {'readonly': True},
'geo_region': {'readonly': True},
'number_of_sites': {'readonly': True},
'resource_group': {'readonly': True},
'provisioning_state': {'readonly': True},
}
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'kind': {'key': 'kind', 'type': 'str'},
'location': {'key': 'location', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
'tags': {'key': 'tags', 'type': '{str}'},
'app_service_plan_name': {'key': 'properties.name', 'type': 'str'},
'worker_tier_name': {'key': 'properties.workerTierName', 'type': 'str'},
'status': {'key': 'properties.status', 'type': 'StatusOptions'},
'subscription': {'key': 'properties.subscription', 'type': 'str'},
'admin_site_name': {'key': 'properties.adminSiteName', 'type': 'str'},
'hosting_environment_profile': {'key': 'properties.hostingEnvironmentProfile', 'type': 'HostingEnvironmentProfile'},
'maximum_number_of_workers': {'key': 'properties.maximumNumberOfWorkers', 'type': 'int'},
'geo_region': {'key': 'properties.geoRegion', 'type': 'str'},
'per_site_scaling': {'key': 'properties.perSiteScaling', 'type': 'bool'},
'number_of_sites': {'key': 'properties.numberOfSites', 'type': 'int'},
'is_spot': {'key': 'properties.isSpot', 'type': 'bool'},
'spot_expiration_time': {'key': 'properties.spotExpirationTime', 'type': 'iso-8601'},
'resource_group': {'key': 'properties.resourceGroup', 'type': 'str'},
'reserved': {'key': 'properties.reserved', 'type': 'bool'},
'target_worker_count': {'key': 'properties.targetWorkerCount', 'type': 'int'},
'target_worker_size_id': {'key': 'properties.targetWorkerSizeId', 'type': 'int'},
'provisioning_state': {'key': 'properties.provisioningState', 'type': 'ProvisioningState'},
'sku': {'key': 'sku', 'type': 'SkuDescription'},
}
def __init__(self, *, location: str, app_service_plan_name: str, kind: str=None, tags=None, worker_tier_name: str=None, admin_site_name: str=None, hosting_environment_profile=None, per_site_scaling: bool=False, is_spot: bool=None, spot_expiration_time=None, reserved: bool=False, target_worker_count: int=None, target_worker_size_id: int=None, sku=None, **kwargs) -> None:
super(AppServicePlan, self).__init__(kind=kind, location=location, tags=tags, **kwargs)
self.app_service_plan_name = app_service_plan_name
self.worker_tier_name = worker_tier_name
self.status = None
self.subscription = None
self.admin_site_name = admin_site_name
self.hosting_environment_profile = hosting_environment_profile
self.maximum_number_of_workers = None
self.geo_region = None
self.per_site_scaling = per_site_scaling
self.number_of_sites = None
self.is_spot = is_spot
self.spot_expiration_time = spot_expiration_time
self.resource_group = None
self.reserved = reserved
self.target_worker_count = target_worker_count
self.target_worker_size_id = target_worker_size_id
self.provisioning_state = None
self.sku = sku
[docs]class AppServicePlanCollection(Model):
"""Collection of App Service plans.
All required parameters must be populated in order to send to Azure.
:param value: Required. Collection of resources.
:type value: list[~azure.mgmt.web.v2016_03_01.models.AppServicePlan]
:param next_link: Link to next page of resources.
:type next_link: str
"""
_validation = {
'value': {'required': True},
}
_attribute_map = {
'value': {'key': 'value', 'type': '[AppServicePlan]'},
'next_link': {'key': 'nextLink', 'type': 'str'},
}
def __init__(self, *, value, next_link: str=None, **kwargs) -> None:
super(AppServicePlanCollection, self).__init__(**kwargs)
self.value = value
self.next_link = next_link
[docs]class AutoHealActions(Model):
"""Actions which to take by the auto-heal module when a rule is triggered.
:param action_type: Predefined action to be taken. Possible values
include: 'Recycle', 'LogEvent', 'CustomAction'
:type action_type: str or
~azure.mgmt.web.v2016_03_01.models.AutoHealActionType
:param custom_action: Custom action to be taken.
:type custom_action:
~azure.mgmt.web.v2016_03_01.models.AutoHealCustomAction
:param min_process_execution_time: Minimum time the process must execute
before taking the action
:type min_process_execution_time: str
"""
_attribute_map = {
'action_type': {'key': 'actionType', 'type': 'AutoHealActionType'},
'custom_action': {'key': 'customAction', 'type': 'AutoHealCustomAction'},
'min_process_execution_time': {'key': 'minProcessExecutionTime', 'type': 'str'},
}
def __init__(self, *, action_type=None, custom_action=None, min_process_execution_time: str=None, **kwargs) -> None:
super(AutoHealActions, self).__init__(**kwargs)
self.action_type = action_type
self.custom_action = custom_action
self.min_process_execution_time = min_process_execution_time
[docs]class AutoHealCustomAction(Model):
"""Custom action to be executed
when an auto heal rule is triggered.
:param exe: Executable to be run.
:type exe: str
:param parameters: Parameters for the executable.
:type parameters: str
"""
_attribute_map = {
'exe': {'key': 'exe', 'type': 'str'},
'parameters': {'key': 'parameters', 'type': 'str'},
}
def __init__(self, *, exe: str=None, parameters: str=None, **kwargs) -> None:
super(AutoHealCustomAction, self).__init__(**kwargs)
self.exe = exe
self.parameters = parameters
[docs]class AutoHealRules(Model):
"""Rules that can be defined for auto-heal.
:param triggers: Conditions that describe when to execute the auto-heal
actions.
:type triggers: ~azure.mgmt.web.v2016_03_01.models.AutoHealTriggers
:param actions: Actions to be executed when a rule is triggered.
:type actions: ~azure.mgmt.web.v2016_03_01.models.AutoHealActions
"""
_attribute_map = {
'triggers': {'key': 'triggers', 'type': 'AutoHealTriggers'},
'actions': {'key': 'actions', 'type': 'AutoHealActions'},
}
def __init__(self, *, triggers=None, actions=None, **kwargs) -> None:
super(AutoHealRules, self).__init__(**kwargs)
self.triggers = triggers
self.actions = actions
[docs]class AutoHealTriggers(Model):
"""Triggers for auto-heal.
:param requests: A rule based on total requests.
:type requests: ~azure.mgmt.web.v2016_03_01.models.RequestsBasedTrigger
:param private_bytes_in_kb: A rule based on private bytes.
:type private_bytes_in_kb: int
:param status_codes: A rule based on status codes.
:type status_codes:
list[~azure.mgmt.web.v2016_03_01.models.StatusCodesBasedTrigger]
:param slow_requests: A rule based on request execution time.
:type slow_requests:
~azure.mgmt.web.v2016_03_01.models.SlowRequestsBasedTrigger
"""
_attribute_map = {
'requests': {'key': 'requests', 'type': 'RequestsBasedTrigger'},
'private_bytes_in_kb': {'key': 'privateBytesInKB', 'type': 'int'},
'status_codes': {'key': 'statusCodes', 'type': '[StatusCodesBasedTrigger]'},
'slow_requests': {'key': 'slowRequests', 'type': 'SlowRequestsBasedTrigger'},
}
def __init__(self, *, requests=None, private_bytes_in_kb: int=None, status_codes=None, slow_requests=None, **kwargs) -> None:
super(AutoHealTriggers, self).__init__(**kwargs)
self.requests = requests
self.private_bytes_in_kb = private_bytes_in_kb
self.status_codes = status_codes
self.slow_requests = slow_requests
[docs]class BillingMeter(ProxyOnlyResource):
"""App Service billing entity that contains information about meter which the
Azure billing system utilizes to charge users for services.
Variables are only populated by the server, and will be ignored when
sending a request.
:ivar id: Resource Id.
:vartype id: str
:ivar name: Resource Name.
:vartype name: str
:param kind: Kind of resource.
:type kind: str
:ivar type: Resource type.
:vartype type: str
:param meter_id: Meter GUID onboarded in Commerce
:type meter_id: str
:param billing_location: Azure Location of billable resource
:type billing_location: str
:param short_name: Short Name from App Service Azure pricing Page
:type short_name: str
:param friendly_name: Friendly name of the meter
:type friendly_name: str
:param resource_type: App Service resource type meter used for
:type resource_type: str
"""
_validation = {
'id': {'readonly': True},
'name': {'readonly': True},
'type': {'readonly': True},
}
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'kind': {'key': 'kind', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
'meter_id': {'key': 'properties.meterId', 'type': 'str'},
'billing_location': {'key': 'properties.billingLocation', 'type': 'str'},
'short_name': {'key': 'properties.shortName', 'type': 'str'},
'friendly_name': {'key': 'properties.friendlyName', 'type': 'str'},
'resource_type': {'key': 'properties.resourceType', 'type': 'str'},
}
def __init__(self, *, kind: str=None, meter_id: str=None, billing_location: str=None, short_name: str=None, friendly_name: str=None, resource_type: str=None, **kwargs) -> None:
super(BillingMeter, self).__init__(kind=kind, **kwargs)
self.meter_id = meter_id
self.billing_location = billing_location
self.short_name = short_name
self.friendly_name = friendly_name
self.resource_type = resource_type
[docs]class Capability(Model):
"""Describes the capabilities/features allowed for a specific SKU.
:param name: Name of the SKU capability.
:type name: str
:param value: Value of the SKU capability.
:type value: str
:param reason: Reason of the SKU capability.
:type reason: str
"""
_attribute_map = {
'name': {'key': 'name', 'type': 'str'},
'value': {'key': 'value', 'type': 'str'},
'reason': {'key': 'reason', 'type': 'str'},
}
def __init__(self, *, name: str=None, value: str=None, reason: str=None, **kwargs) -> None:
super(Capability, self).__init__(**kwargs)
self.name = name
self.value = value
self.reason = reason
[docs]class Certificate(Resource):
"""SSL certificate for an app.
Variables are only populated by the server, and will be ignored when
sending a request.
All required parameters must be populated in order to send to Azure.
:ivar id: Resource Id.
:vartype id: str
:ivar name: Resource Name.
:vartype name: str
:param kind: Kind of resource.
:type kind: str
:param location: Required. Resource Location.
:type location: str
:ivar type: Resource type.
:vartype type: str
:param tags: Resource tags.
:type tags: dict[str, str]
:ivar friendly_name: Friendly name of the certificate.
:vartype friendly_name: str
:ivar subject_name: Subject name of the certificate.
:vartype subject_name: str
:param host_names: Host names the certificate applies to.
:type host_names: list[str]
:param pfx_blob: Pfx blob.
:type pfx_blob: bytearray
:ivar site_name: App name.
:vartype site_name: str
:ivar self_link: Self link.
:vartype self_link: str
:ivar issuer: Certificate issuer.
:vartype issuer: str
:ivar issue_date: Certificate issue Date.
:vartype issue_date: datetime
:ivar expiration_date: Certificate expiration date.
:vartype expiration_date: datetime
:param password: Required. Certificate password.
:type password: str
:ivar thumbprint: Certificate thumbprint.
:vartype thumbprint: str
:ivar valid: Is the certificate valid?.
:vartype valid: bool
:ivar cer_blob: Raw bytes of .cer file
:vartype cer_blob: bytearray
:ivar public_key_hash: Public key hash.
:vartype public_key_hash: str
:ivar hosting_environment_profile: Specification for the App Service
Environment to use for the certificate.
:vartype hosting_environment_profile:
~azure.mgmt.web.v2016_03_01.models.HostingEnvironmentProfile
:param key_vault_id: Key Vault Csm resource Id.
:type key_vault_id: str
:param key_vault_secret_name: Key Vault secret name.
:type key_vault_secret_name: str
:ivar key_vault_secret_status: Status of the Key Vault secret. Possible
values include: 'Initialized', 'WaitingOnCertificateOrder', 'Succeeded',
'CertificateOrderFailed', 'OperationNotPermittedOnKeyVault',
'AzureServiceUnauthorizedToAccessKeyVault', 'KeyVaultDoesNotExist',
'KeyVaultSecretDoesNotExist', 'UnknownError', 'ExternalPrivateKey',
'Unknown'
:vartype key_vault_secret_status: str or
~azure.mgmt.web.v2016_03_01.models.KeyVaultSecretStatus
:ivar geo_region: Region of the certificate.
:vartype geo_region: str
:param server_farm_id: Resource ID of the associated App Service plan,
formatted as:
"/subscriptions/{subscriptionID}/resourceGroups/{groupName}/providers/Microsoft.Web/serverfarms/{appServicePlanName}".
:type server_farm_id: str
"""
_validation = {
'id': {'readonly': True},
'name': {'readonly': True},
'location': {'required': True},
'type': {'readonly': True},
'friendly_name': {'readonly': True},
'subject_name': {'readonly': True},
'site_name': {'readonly': True},
'self_link': {'readonly': True},
'issuer': {'readonly': True},
'issue_date': {'readonly': True},
'expiration_date': {'readonly': True},
'password': {'required': True},
'thumbprint': {'readonly': True},
'valid': {'readonly': True},
'cer_blob': {'readonly': True},
'public_key_hash': {'readonly': True},
'hosting_environment_profile': {'readonly': True},
'key_vault_secret_status': {'readonly': True},
'geo_region': {'readonly': True},
}
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'kind': {'key': 'kind', 'type': 'str'},
'location': {'key': 'location', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
'tags': {'key': 'tags', 'type': '{str}'},
'friendly_name': {'key': 'properties.friendlyName', 'type': 'str'},
'subject_name': {'key': 'properties.subjectName', 'type': 'str'},
'host_names': {'key': 'properties.hostNames', 'type': '[str]'},
'pfx_blob': {'key': 'properties.pfxBlob', 'type': 'bytearray'},
'site_name': {'key': 'properties.siteName', 'type': 'str'},
'self_link': {'key': 'properties.selfLink', 'type': 'str'},
'issuer': {'key': 'properties.issuer', 'type': 'str'},
'issue_date': {'key': 'properties.issueDate', 'type': 'iso-8601'},
'expiration_date': {'key': 'properties.expirationDate', 'type': 'iso-8601'},
'password': {'key': 'properties.password', 'type': 'str'},
'thumbprint': {'key': 'properties.thumbprint', 'type': 'str'},
'valid': {'key': 'properties.valid', 'type': 'bool'},
'cer_blob': {'key': 'properties.cerBlob', 'type': 'bytearray'},
'public_key_hash': {'key': 'properties.publicKeyHash', 'type': 'str'},
'hosting_environment_profile': {'key': 'properties.hostingEnvironmentProfile', 'type': 'HostingEnvironmentProfile'},
'key_vault_id': {'key': 'properties.keyVaultId', 'type': 'str'},
'key_vault_secret_name': {'key': 'properties.keyVaultSecretName', 'type': 'str'},
'key_vault_secret_status': {'key': 'properties.keyVaultSecretStatus', 'type': 'KeyVaultSecretStatus'},
'geo_region': {'key': 'properties.geoRegion', 'type': 'str'},
'server_farm_id': {'key': 'properties.serverFarmId', 'type': 'str'},
}
def __init__(self, *, location: str, password: str, kind: str=None, tags=None, host_names=None, pfx_blob: bytearray=None, key_vault_id: str=None, key_vault_secret_name: str=None, server_farm_id: str=None, **kwargs) -> None:
super(Certificate, self).__init__(kind=kind, location=location, tags=tags, **kwargs)
self.friendly_name = None
self.subject_name = None
self.host_names = host_names
self.pfx_blob = pfx_blob
self.site_name = None
self.self_link = None
self.issuer = None
self.issue_date = None
self.expiration_date = None
self.password = password
self.thumbprint = None
self.valid = None
self.cer_blob = None
self.public_key_hash = None
self.hosting_environment_profile = None
self.key_vault_id = key_vault_id
self.key_vault_secret_name = key_vault_secret_name
self.key_vault_secret_status = None
self.geo_region = None
self.server_farm_id = server_farm_id
[docs]class CertificatePatchResource(ProxyOnlyResource):
"""ARM resource for a certificate.
Variables are only populated by the server, and will be ignored when
sending a request.
All required parameters must be populated in order to send to Azure.
:ivar id: Resource Id.
:vartype id: str
:ivar name: Resource Name.
:vartype name: str
:param kind: Kind of resource.
:type kind: str
:ivar type: Resource type.
:vartype type: str
:ivar friendly_name: Friendly name of the certificate.
:vartype friendly_name: str
:ivar subject_name: Subject name of the certificate.
:vartype subject_name: str
:param host_names: Host names the certificate applies to.
:type host_names: list[str]
:param pfx_blob: Pfx blob.
:type pfx_blob: bytearray
:ivar site_name: App name.
:vartype site_name: str
:ivar self_link: Self link.
:vartype self_link: str
:ivar issuer: Certificate issuer.
:vartype issuer: str
:ivar issue_date: Certificate issue Date.
:vartype issue_date: datetime
:ivar expiration_date: Certificate expiration date.
:vartype expiration_date: datetime
:param password: Required. Certificate password.
:type password: str
:ivar thumbprint: Certificate thumbprint.
:vartype thumbprint: str
:ivar valid: Is the certificate valid?.
:vartype valid: bool
:ivar cer_blob: Raw bytes of .cer file
:vartype cer_blob: bytearray
:ivar public_key_hash: Public key hash.
:vartype public_key_hash: str
:ivar hosting_environment_profile: Specification for the App Service
Environment to use for the certificate.
:vartype hosting_environment_profile:
~azure.mgmt.web.v2016_03_01.models.HostingEnvironmentProfile
:param key_vault_id: Key Vault Csm resource Id.
:type key_vault_id: str
:param key_vault_secret_name: Key Vault secret name.
:type key_vault_secret_name: str
:ivar key_vault_secret_status: Status of the Key Vault secret. Possible
values include: 'Initialized', 'WaitingOnCertificateOrder', 'Succeeded',
'CertificateOrderFailed', 'OperationNotPermittedOnKeyVault',
'AzureServiceUnauthorizedToAccessKeyVault', 'KeyVaultDoesNotExist',
'KeyVaultSecretDoesNotExist', 'UnknownError', 'ExternalPrivateKey',
'Unknown'
:vartype key_vault_secret_status: str or
~azure.mgmt.web.v2016_03_01.models.KeyVaultSecretStatus
:ivar geo_region: Region of the certificate.
:vartype geo_region: str
:param server_farm_id: Resource ID of the associated App Service plan,
formatted as:
"/subscriptions/{subscriptionID}/resourceGroups/{groupName}/providers/Microsoft.Web/serverfarms/{appServicePlanName}".
:type server_farm_id: str
"""
_validation = {
'id': {'readonly': True},
'name': {'readonly': True},
'type': {'readonly': True},
'friendly_name': {'readonly': True},
'subject_name': {'readonly': True},
'site_name': {'readonly': True},
'self_link': {'readonly': True},
'issuer': {'readonly': True},
'issue_date': {'readonly': True},
'expiration_date': {'readonly': True},
'password': {'required': True},
'thumbprint': {'readonly': True},
'valid': {'readonly': True},
'cer_blob': {'readonly': True},
'public_key_hash': {'readonly': True},
'hosting_environment_profile': {'readonly': True},
'key_vault_secret_status': {'readonly': True},
'geo_region': {'readonly': True},
}
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'kind': {'key': 'kind', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
'friendly_name': {'key': 'properties.friendlyName', 'type': 'str'},
'subject_name': {'key': 'properties.subjectName', 'type': 'str'},
'host_names': {'key': 'properties.hostNames', 'type': '[str]'},
'pfx_blob': {'key': 'properties.pfxBlob', 'type': 'bytearray'},
'site_name': {'key': 'properties.siteName', 'type': 'str'},
'self_link': {'key': 'properties.selfLink', 'type': 'str'},
'issuer': {'key': 'properties.issuer', 'type': 'str'},
'issue_date': {'key': 'properties.issueDate', 'type': 'iso-8601'},
'expiration_date': {'key': 'properties.expirationDate', 'type': 'iso-8601'},
'password': {'key': 'properties.password', 'type': 'str'},
'thumbprint': {'key': 'properties.thumbprint', 'type': 'str'},
'valid': {'key': 'properties.valid', 'type': 'bool'},
'cer_blob': {'key': 'properties.cerBlob', 'type': 'bytearray'},
'public_key_hash': {'key': 'properties.publicKeyHash', 'type': 'str'},
'hosting_environment_profile': {'key': 'properties.hostingEnvironmentProfile', 'type': 'HostingEnvironmentProfile'},
'key_vault_id': {'key': 'properties.keyVaultId', 'type': 'str'},
'key_vault_secret_name': {'key': 'properties.keyVaultSecretName', 'type': 'str'},
'key_vault_secret_status': {'key': 'properties.keyVaultSecretStatus', 'type': 'KeyVaultSecretStatus'},
'geo_region': {'key': 'properties.geoRegion', 'type': 'str'},
'server_farm_id': {'key': 'properties.serverFarmId', 'type': 'str'},
}
def __init__(self, *, password: str, kind: str=None, host_names=None, pfx_blob: bytearray=None, key_vault_id: str=None, key_vault_secret_name: str=None, server_farm_id: str=None, **kwargs) -> None:
super(CertificatePatchResource, self).__init__(kind=kind, **kwargs)
self.friendly_name = None
self.subject_name = None
self.host_names = host_names
self.pfx_blob = pfx_blob
self.site_name = None
self.self_link = None
self.issuer = None
self.issue_date = None
self.expiration_date = None
self.password = password
self.thumbprint = None
self.valid = None
self.cer_blob = None
self.public_key_hash = None
self.hosting_environment_profile = None
self.key_vault_id = key_vault_id
self.key_vault_secret_name = key_vault_secret_name
self.key_vault_secret_status = None
self.geo_region = None
self.server_farm_id = server_farm_id
[docs]class CloningInfo(Model):
"""Information needed for cloning operation.
All required parameters must be populated in order to send to Azure.
:param correlation_id: Correlation ID of cloning operation. This ID ties
multiple cloning operations
together to use the same snapshot.
:type correlation_id: str
:param overwrite: <code>true</code> to overwrite destination app;
otherwise, <code>false</code>.
:type overwrite: bool
:param clone_custom_host_names: <code>true</code> to clone custom
hostnames from source app; otherwise, <code>false</code>.
:type clone_custom_host_names: bool
:param clone_source_control: <code>true</code> to clone source control
from source app; otherwise, <code>false</code>.
:type clone_source_control: bool
:param source_web_app_id: Required. ARM resource ID of the source app. App
resource ID is of the form
/subscriptions/{subId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}
for production slots and
/subscriptions/{subId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/slots/{slotName}
for other slots.
:type source_web_app_id: str
:param hosting_environment: App Service Environment.
:type hosting_environment: str
:param app_settings_overrides: Application setting overrides for cloned
app. If specified, these settings override the settings cloned
from source app. Otherwise, application settings from source app are
retained.
:type app_settings_overrides: dict[str, str]
:param configure_load_balancing: <code>true</code> to configure load
balancing for source and destination app.
:type configure_load_balancing: bool
:param traffic_manager_profile_id: ARM resource ID of the Traffic Manager
profile to use, if it exists. Traffic Manager resource ID is of the form
/subscriptions/{subId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/trafficManagerProfiles/{profileName}.
:type traffic_manager_profile_id: str
:param traffic_manager_profile_name: Name of Traffic Manager profile to
create. This is only needed if Traffic Manager profile does not already
exist.
:type traffic_manager_profile_name: str
:param ignore_quotas: <code>true</code> if quotas should be ignored;
otherwise, <code>false</code>.
:type ignore_quotas: bool
"""
_validation = {
'source_web_app_id': {'required': True},
}
_attribute_map = {
'correlation_id': {'key': 'correlationId', 'type': 'str'},
'overwrite': {'key': 'overwrite', 'type': 'bool'},
'clone_custom_host_names': {'key': 'cloneCustomHostNames', 'type': 'bool'},
'clone_source_control': {'key': 'cloneSourceControl', 'type': 'bool'},
'source_web_app_id': {'key': 'sourceWebAppId', 'type': 'str'},
'hosting_environment': {'key': 'hostingEnvironment', 'type': 'str'},
'app_settings_overrides': {'key': 'appSettingsOverrides', 'type': '{str}'},
'configure_load_balancing': {'key': 'configureLoadBalancing', 'type': 'bool'},
'traffic_manager_profile_id': {'key': 'trafficManagerProfileId', 'type': 'str'},
'traffic_manager_profile_name': {'key': 'trafficManagerProfileName', 'type': 'str'},
'ignore_quotas': {'key': 'ignoreQuotas', 'type': 'bool'},
}
def __init__(self, *, source_web_app_id: str, correlation_id: str=None, overwrite: bool=None, clone_custom_host_names: bool=None, clone_source_control: bool=None, hosting_environment: str=None, app_settings_overrides=None, configure_load_balancing: bool=None, traffic_manager_profile_id: str=None, traffic_manager_profile_name: str=None, ignore_quotas: bool=None, **kwargs) -> None:
super(CloningInfo, self).__init__(**kwargs)
self.correlation_id = correlation_id
self.overwrite = overwrite
self.clone_custom_host_names = clone_custom_host_names
self.clone_source_control = clone_source_control
self.source_web_app_id = source_web_app_id
self.hosting_environment = hosting_environment
self.app_settings_overrides = app_settings_overrides
self.configure_load_balancing = configure_load_balancing
self.traffic_manager_profile_id = traffic_manager_profile_id
self.traffic_manager_profile_name = traffic_manager_profile_name
self.ignore_quotas = ignore_quotas
class CloudError(Model):
"""CloudError.
"""
_attribute_map = {
}
[docs]class ConnStringInfo(Model):
"""Database connection string information.
:param name: Name of connection string.
:type name: str
:param connection_string: Connection string value.
:type connection_string: str
:param type: Type of database. Possible values include: 'MySql',
'SQLServer', 'SQLAzure', 'Custom', 'NotificationHub', 'ServiceBus',
'EventHub', 'ApiHub', 'DocDb', 'RedisCache', 'PostgreSQL'
:type type: str or ~azure.mgmt.web.v2016_03_01.models.ConnectionStringType
"""
_attribute_map = {
'name': {'key': 'name', 'type': 'str'},
'connection_string': {'key': 'connectionString', 'type': 'str'},
'type': {'key': 'type', 'type': 'ConnectionStringType'},
}
def __init__(self, *, name: str=None, connection_string: str=None, type=None, **kwargs) -> None:
super(ConnStringInfo, self).__init__(**kwargs)
self.name = name
self.connection_string = connection_string
self.type = type
[docs]class CsmMoveResourceEnvelope(Model):
"""Object with a list of the resources that need to be moved and the resource
group they should be moved to.
:param target_resource_group:
:type target_resource_group: str
:param resources:
:type resources: list[str]
"""
_validation = {
'target_resource_group': {'max_length': 90, 'min_length': 1, 'pattern': r' ^[-\w\._\(\)]+[^\.]$'},
}
_attribute_map = {
'target_resource_group': {'key': 'targetResourceGroup', 'type': 'str'},
'resources': {'key': 'resources', 'type': '[str]'},
}
def __init__(self, *, target_resource_group: str=None, resources=None, **kwargs) -> None:
super(CsmMoveResourceEnvelope, self).__init__(**kwargs)
self.target_resource_group = target_resource_group
self.resources = resources
[docs]class CsmOperationDescription(Model):
"""Description of an operation available for Microsoft.Web resource provider.
:param name:
:type name: str
:param display:
:type display: ~azure.mgmt.web.v2016_03_01.models.CsmOperationDisplay
:param origin:
:type origin: str
:param properties:
:type properties:
~azure.mgmt.web.v2016_03_01.models.CsmOperationDescriptionProperties
"""
_attribute_map = {
'name': {'key': 'name', 'type': 'str'},
'display': {'key': 'display', 'type': 'CsmOperationDisplay'},
'origin': {'key': 'origin', 'type': 'str'},
'properties': {'key': 'properties', 'type': 'CsmOperationDescriptionProperties'},
}
def __init__(self, *, name: str=None, display=None, origin: str=None, properties=None, **kwargs) -> None:
super(CsmOperationDescription, self).__init__(**kwargs)
self.name = name
self.display = display
self.origin = origin
self.properties = properties
[docs]class CsmOperationDescriptionProperties(Model):
"""Properties available for a Microsoft.Web resource provider operation.
:param service_specification:
:type service_specification:
~azure.mgmt.web.v2016_03_01.models.ServiceSpecification
"""
_attribute_map = {
'service_specification': {'key': 'serviceSpecification', 'type': 'ServiceSpecification'},
}
def __init__(self, *, service_specification=None, **kwargs) -> None:
super(CsmOperationDescriptionProperties, self).__init__(**kwargs)
self.service_specification = service_specification
[docs]class CsmOperationDisplay(Model):
"""Meta data about operation used for display in portal.
:param provider:
:type provider: str
:param resource:
:type resource: str
:param operation:
:type operation: str
:param description:
:type description: str
"""
_attribute_map = {
'provider': {'key': 'provider', 'type': 'str'},
'resource': {'key': 'resource', 'type': 'str'},
'operation': {'key': 'operation', 'type': 'str'},
'description': {'key': 'description', 'type': 'str'},
}
def __init__(self, *, provider: str=None, resource: str=None, operation: str=None, description: str=None, **kwargs) -> None:
super(CsmOperationDisplay, self).__init__(**kwargs)
self.provider = provider
self.resource = resource
self.operation = operation
self.description = description
[docs]class CsmUsageQuota(Model):
"""Usage of the quota resource.
:param unit: Units of measurement for the quota resource.
:type unit: str
:param next_reset_time: Next reset time for the resource counter.
:type next_reset_time: datetime
:param current_value: The current value of the resource counter.
:type current_value: long
:param limit: The resource limit.
:type limit: long
:param name: Quota name.
:type name: ~azure.mgmt.web.v2016_03_01.models.LocalizableString
"""
_attribute_map = {
'unit': {'key': 'unit', 'type': 'str'},
'next_reset_time': {'key': 'nextResetTime', 'type': 'iso-8601'},
'current_value': {'key': 'currentValue', 'type': 'long'},
'limit': {'key': 'limit', 'type': 'long'},
'name': {'key': 'name', 'type': 'LocalizableString'},
}
def __init__(self, *, unit: str=None, next_reset_time=None, current_value: int=None, limit: int=None, name=None, **kwargs) -> None:
super(CsmUsageQuota, self).__init__(**kwargs)
self.unit = unit
self.next_reset_time = next_reset_time
self.current_value = current_value
self.limit = limit
self.name = name
[docs]class CsmUsageQuotaCollection(Model):
"""Collection of CSM usage quotas.
Variables are only populated by the server, and will be ignored when
sending a request.
All required parameters must be populated in order to send to Azure.
:param value: Required. Collection of resources.
:type value: list[~azure.mgmt.web.v2016_03_01.models.CsmUsageQuota]
:ivar next_link: Link to next page of resources.
:vartype next_link: str
"""
_validation = {
'value': {'required': True},
'next_link': {'readonly': True},
}
_attribute_map = {
'value': {'key': 'value', 'type': '[CsmUsageQuota]'},
'next_link': {'key': 'nextLink', 'type': 'str'},
}
def __init__(self, *, value, **kwargs) -> None:
super(CsmUsageQuotaCollection, self).__init__(**kwargs)
self.value = value
self.next_link = None
[docs]class DataSource(Model):
"""Class representing data source used by the detectors.
:param instructions: Instructions if any for the data source
:type instructions: list[str]
:param data_source_uri: Datasource Uri Links
:type data_source_uri:
list[~azure.mgmt.web.v2016_03_01.models.NameValuePair]
"""
_attribute_map = {
'instructions': {'key': 'instructions', 'type': '[str]'},
'data_source_uri': {'key': 'dataSourceUri', 'type': '[NameValuePair]'},
}
def __init__(self, *, instructions=None, data_source_uri=None, **kwargs) -> None:
super(DataSource, self).__init__(**kwargs)
self.instructions = instructions
self.data_source_uri = data_source_uri
[docs]class DataTableResponseColumn(Model):
"""Column definition.
:param column_name: Name of the column
:type column_name: str
:param data_type: Data type which looks like 'String' or 'Int32'.
:type data_type: str
:param column_type: Column Type
:type column_type: str
"""
_attribute_map = {
'column_name': {'key': 'columnName', 'type': 'str'},
'data_type': {'key': 'dataType', 'type': 'str'},
'column_type': {'key': 'columnType', 'type': 'str'},
}
def __init__(self, *, column_name: str=None, data_type: str=None, column_type: str=None, **kwargs) -> None:
super(DataTableResponseColumn, self).__init__(**kwargs)
self.column_name = column_name
self.data_type = data_type
self.column_type = column_type
[docs]class DataTableResponseObject(Model):
"""Data Table which defines columns and raw row values.
:param table_name: Name of the table
:type table_name: str
:param columns: List of columns with data types
:type columns:
list[~azure.mgmt.web.v2016_03_01.models.DataTableResponseColumn]
:param rows: Raw row values
:type rows: list[list[str]]
"""
_attribute_map = {
'table_name': {'key': 'tableName', 'type': 'str'},
'columns': {'key': 'columns', 'type': '[DataTableResponseColumn]'},
'rows': {'key': 'rows', 'type': '[[str]]'},
}
def __init__(self, *, table_name: str=None, columns=None, rows=None, **kwargs) -> None:
super(DataTableResponseObject, self).__init__(**kwargs)
self.table_name = table_name
self.columns = columns
self.rows = rows
[docs]class DefaultErrorResponse(Model):
"""App Service error response.
Variables are only populated by the server, and will be ignored when
sending a request.
:ivar error: Error model.
:vartype error:
~azure.mgmt.web.v2016_03_01.models.DefaultErrorResponseError
"""
_validation = {
'error': {'readonly': True},
}
_attribute_map = {
'error': {'key': 'error', 'type': 'DefaultErrorResponseError'},
}
def __init__(self, **kwargs) -> None:
super(DefaultErrorResponse, self).__init__(**kwargs)
self.error = None
[docs]class DefaultErrorResponseException(HttpOperationError):
"""Server responsed with exception of type: 'DefaultErrorResponse'.
:param deserialize: A deserializer
:param response: Server response to be deserialized.
"""
def __init__(self, deserialize, response, *args):
super(DefaultErrorResponseException, self).__init__(deserialize, response, 'DefaultErrorResponse', *args)
[docs]class DefaultErrorResponseError(Model):
"""Error model.
Variables are only populated by the server, and will be ignored when
sending a request.
:ivar code: Standardized string to programmatically identify the error.
:vartype code: str
:ivar message: Detailed error description and debugging information.
:vartype message: str
:ivar target: Detailed error description and debugging information.
:vartype target: str
:param details:
:type details:
list[~azure.mgmt.web.v2016_03_01.models.DefaultErrorResponseErrorDetailsItem]
:ivar innererror: More information to debug error.
:vartype innererror: str
"""
_validation = {
'code': {'readonly': True},
'message': {'readonly': True},
'target': {'readonly': True},
'innererror': {'readonly': True},
}
_attribute_map = {
'code': {'key': 'code', 'type': 'str'},
'message': {'key': 'message', 'type': 'str'},
'target': {'key': 'target', 'type': 'str'},
'details': {'key': 'details', 'type': '[DefaultErrorResponseErrorDetailsItem]'},
'innererror': {'key': 'innererror', 'type': 'str'},
}
def __init__(self, *, details=None, **kwargs) -> None:
super(DefaultErrorResponseError, self).__init__(**kwargs)
self.code = None
self.message = None
self.target = None
self.details = details
self.innererror = None
[docs]class DefaultErrorResponseErrorDetailsItem(Model):
"""Detailed errors.
Variables are only populated by the server, and will be ignored when
sending a request.
:ivar code: Standardized string to programmatically identify the error.
:vartype code: str
:ivar message: Detailed error description and debugging information.
:vartype message: str
:ivar target: Detailed error description and debugging information.
:vartype target: str
"""
_validation = {
'code': {'readonly': True},
'message': {'readonly': True},
'target': {'readonly': True},
}
_attribute_map = {
'code': {'key': 'code', 'type': 'str'},
'message': {'key': 'message', 'type': 'str'},
'target': {'key': 'target', 'type': 'str'},
}
def __init__(self, **kwargs) -> None:
super(DefaultErrorResponseErrorDetailsItem, self).__init__(**kwargs)
self.code = None
self.message = None
self.target = None
[docs]class DeletedSite(Model):
"""A deleted app.
Variables are only populated by the server, and will be ignored when
sending a request.
:param id: Numeric id for the deleted site
:type id: int
:ivar deleted_timestamp: Time in UTC when the app was deleted.
:vartype deleted_timestamp: str
:ivar subscription: Subscription containing the deleted site
:vartype subscription: str
:ivar resource_group: ResourceGroup that contained the deleted site
:vartype resource_group: str
:ivar name: Name of the deleted site
:vartype name: str
:ivar slot: Slot of the deleted site
:vartype slot: str
"""
_validation = {
'deleted_timestamp': {'readonly': True},
'subscription': {'readonly': True},
'resource_group': {'readonly': True},
'name': {'readonly': True},
'slot': {'readonly': True},
}
_attribute_map = {
'id': {'key': 'id', 'type': 'int'},
'deleted_timestamp': {'key': 'deletedTimestamp', 'type': 'str'},
'subscription': {'key': 'subscription', 'type': 'str'},
'resource_group': {'key': 'resourceGroup', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'slot': {'key': 'slot', 'type': 'str'},
}
def __init__(self, *, id: int=None, **kwargs) -> None:
super(DeletedSite, self).__init__(**kwargs)
self.id = id
self.deleted_timestamp = None
self.subscription = None
self.resource_group = None
self.name = None
self.slot = None
[docs]class DeploymentLocations(Model):
"""List of available locations (regions or App Service Environments) for
deployment of App Service resources.
:param locations: Available regions.
:type locations: list[~azure.mgmt.web.v2016_03_01.models.GeoRegion]
:param hosting_environments: Available App Service Environments with full
descriptions of the environments.
:type hosting_environments:
list[~azure.mgmt.web.v2016_03_01.models.AppServiceEnvironment]
:param hosting_environment_deployment_infos: Available App Service
Environments with basic information.
:type hosting_environment_deployment_infos:
list[~azure.mgmt.web.v2016_03_01.models.HostingEnvironmentDeploymentInfo]
"""
_attribute_map = {
'locations': {'key': 'locations', 'type': '[GeoRegion]'},
'hosting_environments': {'key': 'hostingEnvironments', 'type': '[AppServiceEnvironment]'},
'hosting_environment_deployment_infos': {'key': 'hostingEnvironmentDeploymentInfos', 'type': '[HostingEnvironmentDeploymentInfo]'},
}
def __init__(self, *, locations=None, hosting_environments=None, hosting_environment_deployment_infos=None, **kwargs) -> None:
super(DeploymentLocations, self).__init__(**kwargs)
self.locations = locations
self.hosting_environments = hosting_environments
self.hosting_environment_deployment_infos = hosting_environment_deployment_infos
[docs]class DetectorAbnormalTimePeriod(Model):
"""Class representing Abnormal Time Period detected.
:param start_time: Start time of the correlated event
:type start_time: datetime
:param end_time: End time of the correlated event
:type end_time: datetime
:param message: Message describing the event
:type message: str
:param source: Represents the name of the Detector
:type source: str
:param priority: Represents the rank of the Detector
:type priority: float
:param meta_data: Downtime metadata
:type meta_data:
list[list[~azure.mgmt.web.v2016_03_01.models.NameValuePair]]
:param type: Represents the type of the Detector. Possible values include:
'ServiceIncident', 'AppDeployment', 'AppCrash', 'RuntimeIssueDetected',
'AseDeployment', 'UserIssue', 'PlatformIssue', 'Other'
:type type: str or ~azure.mgmt.web.v2016_03_01.models.IssueType
:param solutions: List of proposed solutions
:type solutions: list[~azure.mgmt.web.v2016_03_01.models.Solution]
"""
_attribute_map = {
'start_time': {'key': 'startTime', 'type': 'iso-8601'},
'end_time': {'key': 'endTime', 'type': 'iso-8601'},
'message': {'key': 'message', 'type': 'str'},
'source': {'key': 'source', 'type': 'str'},
'priority': {'key': 'priority', 'type': 'float'},
'meta_data': {'key': 'metaData', 'type': '[[NameValuePair]]'},
'type': {'key': 'type', 'type': 'IssueType'},
'solutions': {'key': 'solutions', 'type': '[Solution]'},
}
def __init__(self, *, start_time=None, end_time=None, message: str=None, source: str=None, priority: float=None, meta_data=None, type=None, solutions=None, **kwargs) -> None:
super(DetectorAbnormalTimePeriod, self).__init__(**kwargs)
self.start_time = start_time
self.end_time = end_time
self.message = message
self.source = source
self.priority = priority
self.meta_data = meta_data
self.type = type
self.solutions = solutions
[docs]class DetectorDefinition(ProxyOnlyResource):
"""Class representing detector definition.
Variables are only populated by the server, and will be ignored when
sending a request.
:ivar id: Resource Id.
:vartype id: str
:ivar name: Resource Name.
:vartype name: str
:param kind: Kind of resource.
:type kind: str
:ivar type: Resource type.
:vartype type: str
:ivar display_name: Display name of the detector
:vartype display_name: str
:ivar description: Description of the detector
:vartype description: str
:ivar rank: Detector Rank
:vartype rank: float
:ivar is_enabled: Flag representing whether detector is enabled or not.
:vartype is_enabled: bool
"""
_validation = {
'id': {'readonly': True},
'name': {'readonly': True},
'type': {'readonly': True},
'display_name': {'readonly': True},
'description': {'readonly': True},
'rank': {'readonly': True},
'is_enabled': {'readonly': True},
}
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'kind': {'key': 'kind', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
'display_name': {'key': 'properties.displayName', 'type': 'str'},
'description': {'key': 'properties.description', 'type': 'str'},
'rank': {'key': 'properties.rank', 'type': 'float'},
'is_enabled': {'key': 'properties.isEnabled', 'type': 'bool'},
}
def __init__(self, *, kind: str=None, **kwargs) -> None:
super(DetectorDefinition, self).__init__(kind=kind, **kwargs)
self.display_name = None
self.description = None
self.rank = None
self.is_enabled = None
[docs]class DetectorInfo(Model):
"""Definition of Detector.
Variables are only populated by the server, and will be ignored when
sending a request.
:ivar description: Short description of the detector and its purpose
:vartype description: str
:ivar category: Support Category
:vartype category: str
:ivar sub_category: Support Sub Category
:vartype sub_category: str
:ivar support_topic_id: Support Topic Id
:vartype support_topic_id: str
"""
_validation = {
'description': {'readonly': True},
'category': {'readonly': True},
'sub_category': {'readonly': True},
'support_topic_id': {'readonly': True},
}
_attribute_map = {
'description': {'key': 'description', 'type': 'str'},
'category': {'key': 'category', 'type': 'str'},
'sub_category': {'key': 'subCategory', 'type': 'str'},
'support_topic_id': {'key': 'supportTopicId', 'type': 'str'},
}
def __init__(self, **kwargs) -> None:
super(DetectorInfo, self).__init__(**kwargs)
self.description = None
self.category = None
self.sub_category = None
self.support_topic_id = None
[docs]class DetectorResponse(ProxyOnlyResource):
"""Class representing Response from Detector.
Variables are only populated by the server, and will be ignored when
sending a request.
:ivar id: Resource Id.
:vartype id: str
:ivar name: Resource Name.
:vartype name: str
:param kind: Kind of resource.
:type kind: str
:ivar type: Resource type.
:vartype type: str
:param metadata: metadata for the detector
:type metadata: ~azure.mgmt.web.v2016_03_01.models.DetectorInfo
:param dataset: Data Set
:type dataset: list[~azure.mgmt.web.v2016_03_01.models.DiagnosticData]
"""
_validation = {
'id': {'readonly': True},
'name': {'readonly': True},
'type': {'readonly': True},
}
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'kind': {'key': 'kind', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
'metadata': {'key': 'properties.metadata', 'type': 'DetectorInfo'},
'dataset': {'key': 'properties.dataset', 'type': '[DiagnosticData]'},
}
def __init__(self, *, kind: str=None, metadata=None, dataset=None, **kwargs) -> None:
super(DetectorResponse, self).__init__(kind=kind, **kwargs)
self.metadata = metadata
self.dataset = dataset
[docs]class DiagnosticAnalysis(ProxyOnlyResource):
"""Class representing a diagnostic analysis done on an application.
Variables are only populated by the server, and will be ignored when
sending a request.
:ivar id: Resource Id.
:vartype id: str
:ivar name: Resource Name.
:vartype name: str
:param kind: Kind of resource.
:type kind: str
:ivar type: Resource type.
:vartype type: str
:param start_time: Start time of the period
:type start_time: datetime
:param end_time: End time of the period
:type end_time: datetime
:param abnormal_time_periods: List of time periods.
:type abnormal_time_periods:
list[~azure.mgmt.web.v2016_03_01.models.AbnormalTimePeriod]
:param payload: Data by each detector
:type payload: list[~azure.mgmt.web.v2016_03_01.models.AnalysisData]
:param non_correlated_detectors: Data by each detector for detectors that
did not corelate
:type non_correlated_detectors:
list[~azure.mgmt.web.v2016_03_01.models.DetectorDefinition]
"""
_validation = {
'id': {'readonly': True},
'name': {'readonly': True},
'type': {'readonly': True},
}
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'kind': {'key': 'kind', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
'start_time': {'key': 'properties.startTime', 'type': 'iso-8601'},
'end_time': {'key': 'properties.endTime', 'type': 'iso-8601'},
'abnormal_time_periods': {'key': 'properties.abnormalTimePeriods', 'type': '[AbnormalTimePeriod]'},
'payload': {'key': 'properties.payload', 'type': '[AnalysisData]'},
'non_correlated_detectors': {'key': 'properties.nonCorrelatedDetectors', 'type': '[DetectorDefinition]'},
}
def __init__(self, *, kind: str=None, start_time=None, end_time=None, abnormal_time_periods=None, payload=None, non_correlated_detectors=None, **kwargs) -> None:
super(DiagnosticAnalysis, self).__init__(kind=kind, **kwargs)
self.start_time = start_time
self.end_time = end_time
self.abnormal_time_periods = abnormal_time_periods
self.payload = payload
self.non_correlated_detectors = non_correlated_detectors
[docs]class DiagnosticCategory(ProxyOnlyResource):
"""Class representing detector definition.
Variables are only populated by the server, and will be ignored when
sending a request.
:ivar id: Resource Id.
:vartype id: str
:ivar name: Resource Name.
:vartype name: str
:param kind: Kind of resource.
:type kind: str
:ivar type: Resource type.
:vartype type: str
:ivar description: Description of the diagnostic category
:vartype description: str
"""
_validation = {
'id': {'readonly': True},
'name': {'readonly': True},
'type': {'readonly': True},
'description': {'readonly': True},
}
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'kind': {'key': 'kind', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
'description': {'key': 'properties.description', 'type': 'str'},
}
def __init__(self, *, kind: str=None, **kwargs) -> None:
super(DiagnosticCategory, self).__init__(kind=kind, **kwargs)
self.description = None
[docs]class DiagnosticData(Model):
"""Set of data with rendering instructions.
:param table: Data in table form
:type table: ~azure.mgmt.web.v2016_03_01.models.DataTableResponseObject
:param rendering_properties: Properties that describe how the table should
be rendered
:type rendering_properties: ~azure.mgmt.web.v2016_03_01.models.Rendering
"""
_attribute_map = {
'table': {'key': 'table', 'type': 'DataTableResponseObject'},
'rendering_properties': {'key': 'renderingProperties', 'type': 'Rendering'},
}
def __init__(self, *, table=None, rendering_properties=None, **kwargs) -> None:
super(DiagnosticData, self).__init__(**kwargs)
self.table = table
self.rendering_properties = rendering_properties
[docs]class DiagnosticDetectorResponse(ProxyOnlyResource):
"""Class representing Response from Diagnostic Detectors.
Variables are only populated by the server, and will be ignored when
sending a request.
:ivar id: Resource Id.
:vartype id: str
:ivar name: Resource Name.
:vartype name: str
:param kind: Kind of resource.
:type kind: str
:ivar type: Resource type.
:vartype type: str
:param start_time: Start time of the period
:type start_time: datetime
:param end_time: End time of the period
:type end_time: datetime
:param issue_detected: Flag representing Issue was detected.
:type issue_detected: bool
:param detector_definition: Detector's definition
:type detector_definition:
~azure.mgmt.web.v2016_03_01.models.DetectorDefinition
:param metrics: Metrics provided by the detector
:type metrics:
list[~azure.mgmt.web.v2016_03_01.models.DiagnosticMetricSet]
:param abnormal_time_periods: List of Correlated events found by the
detector
:type abnormal_time_periods:
list[~azure.mgmt.web.v2016_03_01.models.DetectorAbnormalTimePeriod]
:param data: Additional Data that detector wants to send.
:type data: list[list[~azure.mgmt.web.v2016_03_01.models.NameValuePair]]
:param response_meta_data: Meta Data
:type response_meta_data:
~azure.mgmt.web.v2016_03_01.models.ResponseMetaData
"""
_validation = {
'id': {'readonly': True},
'name': {'readonly': True},
'type': {'readonly': True},
}
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'kind': {'key': 'kind', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
'start_time': {'key': 'properties.startTime', 'type': 'iso-8601'},
'end_time': {'key': 'properties.endTime', 'type': 'iso-8601'},
'issue_detected': {'key': 'properties.issueDetected', 'type': 'bool'},
'detector_definition': {'key': 'properties.detectorDefinition', 'type': 'DetectorDefinition'},
'metrics': {'key': 'properties.metrics', 'type': '[DiagnosticMetricSet]'},
'abnormal_time_periods': {'key': 'properties.abnormalTimePeriods', 'type': '[DetectorAbnormalTimePeriod]'},
'data': {'key': 'properties.data', 'type': '[[NameValuePair]]'},
'response_meta_data': {'key': 'properties.responseMetaData', 'type': 'ResponseMetaData'},
}
def __init__(self, *, kind: str=None, start_time=None, end_time=None, issue_detected: bool=None, detector_definition=None, metrics=None, abnormal_time_periods=None, data=None, response_meta_data=None, **kwargs) -> None:
super(DiagnosticDetectorResponse, self).__init__(kind=kind, **kwargs)
self.start_time = start_time
self.end_time = end_time
self.issue_detected = issue_detected
self.detector_definition = detector_definition
self.metrics = metrics
self.abnormal_time_periods = abnormal_time_periods
self.data = data
self.response_meta_data = response_meta_data
[docs]class DiagnosticMetricSample(Model):
"""Class representing Diagnostic Metric.
:param timestamp: Time at which metric is measured
:type timestamp: datetime
:param role_instance: Role Instance. Null if this counter is not per
instance
This is returned and should be whichever instance name we desire to be
returned
i.e. CPU and Memory return RDWORKERNAME (LargeDed..._IN_0)
where RDWORKERNAME is Machine name below and RoleInstance name in
parenthesis
:type role_instance: str
:param total: Total value of the metric. If multiple measurements are made
this will have sum of all.
:type total: float
:param maximum: Maximum of the metric sampled during the time period
:type maximum: float
:param minimum: Minimum of the metric sampled during the time period
:type minimum: float
:param is_aggregated: Whether the values are aggregates across all workers
or not
:type is_aggregated: bool
"""
_attribute_map = {
'timestamp': {'key': 'timestamp', 'type': 'iso-8601'},
'role_instance': {'key': 'roleInstance', 'type': 'str'},
'total': {'key': 'total', 'type': 'float'},
'maximum': {'key': 'maximum', 'type': 'float'},
'minimum': {'key': 'minimum', 'type': 'float'},
'is_aggregated': {'key': 'isAggregated', 'type': 'bool'},
}
def __init__(self, *, timestamp=None, role_instance: str=None, total: float=None, maximum: float=None, minimum: float=None, is_aggregated: bool=None, **kwargs) -> None:
super(DiagnosticMetricSample, self).__init__(**kwargs)
self.timestamp = timestamp
self.role_instance = role_instance
self.total = total
self.maximum = maximum
self.minimum = minimum
self.is_aggregated = is_aggregated
[docs]class DiagnosticMetricSet(Model):
"""Class representing Diagnostic Metric information.
:param name: Name of the metric
:type name: str
:param unit: Metric's unit
:type unit: str
:param start_time: Start time of the period
:type start_time: datetime
:param end_time: End time of the period
:type end_time: datetime
:param time_grain: Presented time grain. Supported grains at the moment
are PT1M, PT1H, P1D
:type time_grain: str
:param values: Collection of metric values for the selected period based
on the
{Microsoft.Web.Hosting.Administration.DiagnosticMetricSet.TimeGrain}
:type values:
list[~azure.mgmt.web.v2016_03_01.models.DiagnosticMetricSample]
"""
_attribute_map = {
'name': {'key': 'name', 'type': 'str'},
'unit': {'key': 'unit', 'type': 'str'},
'start_time': {'key': 'startTime', 'type': 'iso-8601'},
'end_time': {'key': 'endTime', 'type': 'iso-8601'},
'time_grain': {'key': 'timeGrain', 'type': 'str'},
'values': {'key': 'values', 'type': '[DiagnosticMetricSample]'},
}
def __init__(self, *, name: str=None, unit: str=None, start_time=None, end_time=None, time_grain: str=None, values=None, **kwargs) -> None:
super(DiagnosticMetricSet, self).__init__(**kwargs)
self.name = name
self.unit = unit
self.start_time = start_time
self.end_time = end_time
self.time_grain = time_grain
self.values = values
[docs]class Dimension(Model):
"""Dimension of a resource metric. For e.g. instance specific HTTP requests
for a web app,
where instance name is dimension of the metric HTTP request.
:param name:
:type name: str
:param display_name:
:type display_name: str
:param internal_name:
:type internal_name: str
:param to_be_exported_for_shoebox:
:type to_be_exported_for_shoebox: bool
"""
_attribute_map = {
'name': {'key': 'name', 'type': 'str'},
'display_name': {'key': 'displayName', 'type': 'str'},
'internal_name': {'key': 'internalName', 'type': 'str'},
'to_be_exported_for_shoebox': {'key': 'toBeExportedForShoebox', 'type': 'bool'},
}
def __init__(self, *, name: str=None, display_name: str=None, internal_name: str=None, to_be_exported_for_shoebox: bool=None, **kwargs) -> None:
super(Dimension, self).__init__(**kwargs)
self.name = name
self.display_name = display_name
self.internal_name = internal_name
self.to_be_exported_for_shoebox = to_be_exported_for_shoebox
[docs]class ErrorEntity(Model):
"""Body of the error response returned from the API.
:param extended_code: Type of error.
:type extended_code: str
:param message_template: Message template.
:type message_template: str
:param parameters: Parameters for the template.
:type parameters: list[str]
:param inner_errors: Inner errors.
:type inner_errors: list[~azure.mgmt.web.v2016_03_01.models.ErrorEntity]
:param code: Basic error code.
:type code: str
:param message: Any details of the error.
:type message: str
"""
_attribute_map = {
'extended_code': {'key': 'extendedCode', 'type': 'str'},
'message_template': {'key': 'messageTemplate', 'type': 'str'},
'parameters': {'key': 'parameters', 'type': '[str]'},
'inner_errors': {'key': 'innerErrors', 'type': '[ErrorEntity]'},
'code': {'key': 'code', 'type': 'str'},
'message': {'key': 'message', 'type': 'str'},
}
def __init__(self, *, extended_code: str=None, message_template: str=None, parameters=None, inner_errors=None, code: str=None, message: str=None, **kwargs) -> None:
super(ErrorEntity, self).__init__(**kwargs)
self.extended_code = extended_code
self.message_template = message_template
self.parameters = parameters
self.inner_errors = inner_errors
self.code = code
self.message = message
[docs]class Experiments(Model):
"""Routing rules in production experiments.
:param ramp_up_rules: List of ramp-up rules.
:type ramp_up_rules: list[~azure.mgmt.web.v2016_03_01.models.RampUpRule]
"""
_attribute_map = {
'ramp_up_rules': {'key': 'rampUpRules', 'type': '[RampUpRule]'},
}
def __init__(self, *, ramp_up_rules=None, **kwargs) -> None:
super(Experiments, self).__init__(**kwargs)
self.ramp_up_rules = ramp_up_rules
[docs]class GeoRegion(ProxyOnlyResource):
"""Geographical region.
Variables are only populated by the server, and will be ignored when
sending a request.
:ivar id: Resource Id.
:vartype id: str
:ivar name: Resource Name.
:vartype name: str
:param kind: Kind of resource.
:type kind: str
:ivar type: Resource type.
:vartype type: str
:ivar geo_region_name: Region name.
:vartype geo_region_name: str
:ivar description: Region description.
:vartype description: str
:ivar display_name: Display name for region.
:vartype display_name: str
"""
_validation = {
'id': {'readonly': True},
'name': {'readonly': True},
'type': {'readonly': True},
'geo_region_name': {'readonly': True},
'description': {'readonly': True},
'display_name': {'readonly': True},
}
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'kind': {'key': 'kind', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
'geo_region_name': {'key': 'properties.name', 'type': 'str'},
'description': {'key': 'properties.description', 'type': 'str'},
'display_name': {'key': 'properties.displayName', 'type': 'str'},
}
def __init__(self, *, kind: str=None, **kwargs) -> None:
super(GeoRegion, self).__init__(kind=kind, **kwargs)
self.geo_region_name = None
self.description = None
self.display_name = None
[docs]class GlobalCsmSkuDescription(Model):
"""A Global SKU Description.
:param name: Name of the resource SKU.
:type name: str
:param tier: Service Tier of the resource SKU.
:type tier: str
:param size: Size specifier of the resource SKU.
:type size: str
:param family: Family code of the resource SKU.
:type family: str
:param capacity: Min, max, and default scale values of the SKU.
:type capacity: ~azure.mgmt.web.v2016_03_01.models.SkuCapacity
:param locations: Locations of the SKU.
:type locations: list[str]
:param capabilities: Capabilities of the SKU, e.g., is traffic manager
enabled?
:type capabilities: list[~azure.mgmt.web.v2016_03_01.models.Capability]
"""
_attribute_map = {
'name': {'key': 'name', 'type': 'str'},
'tier': {'key': 'tier', 'type': 'str'},
'size': {'key': 'size', 'type': 'str'},
'family': {'key': 'family', 'type': 'str'},
'capacity': {'key': 'capacity', 'type': 'SkuCapacity'},
'locations': {'key': 'locations', 'type': '[str]'},
'capabilities': {'key': 'capabilities', 'type': '[Capability]'},
}
def __init__(self, *, name: str=None, tier: str=None, size: str=None, family: str=None, capacity=None, locations=None, capabilities=None, **kwargs) -> None:
super(GlobalCsmSkuDescription, self).__init__(**kwargs)
self.name = name
self.tier = tier
self.size = size
self.family = family
self.capacity = capacity
self.locations = locations
self.capabilities = capabilities
[docs]class HandlerMapping(Model):
"""The IIS handler mappings used to define which handler processes HTTP
requests with certain extension.
For example, it is used to configure php-cgi.exe process to handle all HTTP
requests with *.php extension.
:param extension: Requests with this extension will be handled using the
specified FastCGI application.
:type extension: str
:param script_processor: The absolute path to the FastCGI application.
:type script_processor: str
:param arguments: Command-line arguments to be passed to the script
processor.
:type arguments: str
"""
_attribute_map = {
'extension': {'key': 'extension', 'type': 'str'},
'script_processor': {'key': 'scriptProcessor', 'type': 'str'},
'arguments': {'key': 'arguments', 'type': 'str'},
}
def __init__(self, *, extension: str=None, script_processor: str=None, arguments: str=None, **kwargs) -> None:
super(HandlerMapping, self).__init__(**kwargs)
self.extension = extension
self.script_processor = script_processor
self.arguments = arguments
[docs]class HostingEnvironmentDeploymentInfo(Model):
"""Information needed to create resources on an App Service Environment.
:param name: Name of the App Service Environment.
:type name: str
:param location: Location of the App Service Environment.
:type location: str
"""
_attribute_map = {
'name': {'key': 'name', 'type': 'str'},
'location': {'key': 'location', 'type': 'str'},
}
def __init__(self, *, name: str=None, location: str=None, **kwargs) -> None:
super(HostingEnvironmentDeploymentInfo, self).__init__(**kwargs)
self.name = name
self.location = location
[docs]class HostingEnvironmentProfile(Model):
"""Specification for an App Service Environment to use for this resource.
Variables are only populated by the server, and will be ignored when
sending a request.
:param id: Resource ID of the App Service Environment.
:type id: str
:ivar name: Name of the App Service Environment.
:vartype name: str
:ivar type: Resource type of the App Service Environment.
:vartype type: str
"""
_validation = {
'name': {'readonly': True},
'type': {'readonly': True},
}
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
}
def __init__(self, *, id: str=None, **kwargs) -> None:
super(HostingEnvironmentProfile, self).__init__(**kwargs)
self.id = id
self.name = None
self.type = None
[docs]class HostNameSslState(Model):
"""SSL-enabled hostname.
:param name: Hostname.
:type name: str
:param ssl_state: SSL type. Possible values include: 'Disabled',
'SniEnabled', 'IpBasedEnabled'
:type ssl_state: str or ~azure.mgmt.web.v2016_03_01.models.SslState
:param virtual_ip: Virtual IP address assigned to the hostname if IP based
SSL is enabled.
:type virtual_ip: str
:param thumbprint: SSL certificate thumbprint.
:type thumbprint: str
:param to_update: Set to <code>true</code> to update existing hostname.
:type to_update: bool
:param host_type: Indicates whether the hostname is a standard or
repository hostname. Possible values include: 'Standard', 'Repository'
:type host_type: str or ~azure.mgmt.web.v2016_03_01.models.HostType
"""
_attribute_map = {
'name': {'key': 'name', 'type': 'str'},
'ssl_state': {'key': 'sslState', 'type': 'SslState'},
'virtual_ip': {'key': 'virtualIP', 'type': 'str'},
'thumbprint': {'key': 'thumbprint', 'type': 'str'},
'to_update': {'key': 'toUpdate', 'type': 'bool'},
'host_type': {'key': 'hostType', 'type': 'HostType'},
}
def __init__(self, *, name: str=None, ssl_state=None, virtual_ip: str=None, thumbprint: str=None, to_update: bool=None, host_type=None, **kwargs) -> None:
super(HostNameSslState, self).__init__(**kwargs)
self.name = name
self.ssl_state = ssl_state
self.virtual_ip = virtual_ip
self.thumbprint = thumbprint
self.to_update = to_update
self.host_type = host_type
[docs]class HybridConnection(ProxyOnlyResource):
"""Hybrid Connection contract. This is used to configure a Hybrid Connection.
Variables are only populated by the server, and will be ignored when
sending a request.
:ivar id: Resource Id.
:vartype id: str
:ivar name: Resource Name.
:vartype name: str
:param kind: Kind of resource.
:type kind: str
:ivar type: Resource type.
:vartype type: str
:param service_bus_namespace: The name of the Service Bus namespace.
:type service_bus_namespace: str
:param relay_name: The name of the Service Bus relay.
:type relay_name: str
:param relay_arm_uri: The ARM URI to the Service Bus relay.
:type relay_arm_uri: str
:param hostname: The hostname of the endpoint.
:type hostname: str
:param port: The port of the endpoint.
:type port: int
:param send_key_name: The name of the Service Bus key which has Send
permissions. This is used to authenticate to Service Bus.
:type send_key_name: str
:param send_key_value: The value of the Service Bus key. This is used to
authenticate to Service Bus. In ARM this key will not be returned
normally, use the POST /listKeys API instead.
:type send_key_value: str
:param service_bus_suffix: The suffix for the service bus endpoint. By
default this is .servicebus.windows.net
:type service_bus_suffix: str
"""
_validation = {
'id': {'readonly': True},
'name': {'readonly': True},
'type': {'readonly': True},
}
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'kind': {'key': 'kind', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
'service_bus_namespace': {'key': 'properties.serviceBusNamespace', 'type': 'str'},
'relay_name': {'key': 'properties.relayName', 'type': 'str'},
'relay_arm_uri': {'key': 'properties.relayArmUri', 'type': 'str'},
'hostname': {'key': 'properties.hostname', 'type': 'str'},
'port': {'key': 'properties.port', 'type': 'int'},
'send_key_name': {'key': 'properties.sendKeyName', 'type': 'str'},
'send_key_value': {'key': 'properties.sendKeyValue', 'type': 'str'},
'service_bus_suffix': {'key': 'properties.serviceBusSuffix', 'type': 'str'},
}
def __init__(self, *, kind: str=None, service_bus_namespace: str=None, relay_name: str=None, relay_arm_uri: str=None, hostname: str=None, port: int=None, send_key_name: str=None, send_key_value: str=None, service_bus_suffix: str=None, **kwargs) -> None:
super(HybridConnection, self).__init__(kind=kind, **kwargs)
self.service_bus_namespace = service_bus_namespace
self.relay_name = relay_name
self.relay_arm_uri = relay_arm_uri
self.hostname = hostname
self.port = port
self.send_key_name = send_key_name
self.send_key_value = send_key_value
self.service_bus_suffix = service_bus_suffix
[docs]class HybridConnectionKey(ProxyOnlyResource):
"""Hybrid Connection key contract. This has the send key name and value for a
Hybrid Connection.
Variables are only populated by the server, and will be ignored when
sending a request.
:ivar id: Resource Id.
:vartype id: str
:ivar name: Resource Name.
:vartype name: str
:param kind: Kind of resource.
:type kind: str
:ivar type: Resource type.
:vartype type: str
:ivar send_key_name: The name of the send key.
:vartype send_key_name: str
:ivar send_key_value: The value of the send key.
:vartype send_key_value: str
"""
_validation = {
'id': {'readonly': True},
'name': {'readonly': True},
'type': {'readonly': True},
'send_key_name': {'readonly': True},
'send_key_value': {'readonly': True},
}
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'kind': {'key': 'kind', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
'send_key_name': {'key': 'properties.sendKeyName', 'type': 'str'},
'send_key_value': {'key': 'properties.sendKeyValue', 'type': 'str'},
}
def __init__(self, *, kind: str=None, **kwargs) -> None:
super(HybridConnectionKey, self).__init__(kind=kind, **kwargs)
self.send_key_name = None
self.send_key_value = None
[docs]class Identifier(ProxyOnlyResource):
"""A domain specific resource identifier.
Variables are only populated by the server, and will be ignored when
sending a request.
:ivar id: Resource Id.
:vartype id: str
:ivar name: Resource Name.
:vartype name: str
:param kind: Kind of resource.
:type kind: str
:ivar type: Resource type.
:vartype type: str
:param identifier_id: String representation of the identity.
:type identifier_id: str
"""
_validation = {
'id': {'readonly': True},
'name': {'readonly': True},
'type': {'readonly': True},
}
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'kind': {'key': 'kind', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
'identifier_id': {'key': 'properties.id', 'type': 'str'},
}
def __init__(self, *, kind: str=None, identifier_id: str=None, **kwargs) -> None:
super(Identifier, self).__init__(kind=kind, **kwargs)
self.identifier_id = identifier_id
[docs]class IpSecurityRestriction(Model):
"""IP security restriction on an app.
All required parameters must be populated in order to send to Azure.
:param ip_address: Required. IP address the security restriction is valid
for.
:type ip_address: str
:param subnet_mask: Subnet mask for the range of IP addresses the
restriction is valid for.
:type subnet_mask: str
"""
_validation = {
'ip_address': {'required': True},
}
_attribute_map = {
'ip_address': {'key': 'ipAddress', 'type': 'str'},
'subnet_mask': {'key': 'subnetMask', 'type': 'str'},
}
def __init__(self, *, ip_address: str, subnet_mask: str=None, **kwargs) -> None:
super(IpSecurityRestriction, self).__init__(**kwargs)
self.ip_address = ip_address
self.subnet_mask = subnet_mask
[docs]class LocalizableString(Model):
"""Localizable string object containing the name and a localized value.
:param value: Non-localized name.
:type value: str
:param localized_value: Localized name.
:type localized_value: str
"""
_attribute_map = {
'value': {'key': 'value', 'type': 'str'},
'localized_value': {'key': 'localizedValue', 'type': 'str'},
}
def __init__(self, *, value: str=None, localized_value: str=None, **kwargs) -> None:
super(LocalizableString, self).__init__(**kwargs)
self.value = value
self.localized_value = localized_value
[docs]class ManagedServiceIdentity(Model):
"""Managed service identity.
Variables are only populated by the server, and will be ignored when
sending a request.
:param type: Type of managed service identity. Possible values include:
'SystemAssigned'
:type type: str or
~azure.mgmt.web.v2016_03_01.models.ManagedServiceIdentityType
:ivar tenant_id: Tenant of managed service identity.
:vartype tenant_id: str
:ivar principal_id: Principal Id of managed service identity.
:vartype principal_id: str
"""
_validation = {
'tenant_id': {'readonly': True},
'principal_id': {'readonly': True},
}
_attribute_map = {
'type': {'key': 'type', 'type': 'str'},
'tenant_id': {'key': 'tenantId', 'type': 'str'},
'principal_id': {'key': 'principalId', 'type': 'str'},
}
def __init__(self, *, type=None, **kwargs) -> None:
super(ManagedServiceIdentity, self).__init__(**kwargs)
self.type = type
self.tenant_id = None
self.principal_id = None
[docs]class MetricAvailability(Model):
"""Retention policy of a resource metric.
:param time_grain:
:type time_grain: str
:param blob_duration:
:type blob_duration: str
"""
_attribute_map = {
'time_grain': {'key': 'timeGrain', 'type': 'str'},
'blob_duration': {'key': 'blobDuration', 'type': 'str'},
}
def __init__(self, *, time_grain: str=None, blob_duration: str=None, **kwargs) -> None:
super(MetricAvailability, self).__init__(**kwargs)
self.time_grain = time_grain
self.blob_duration = blob_duration
[docs]class MetricSpecification(Model):
"""Definition of a single resource metric.
:param name:
:type name: str
:param display_name:
:type display_name: str
:param display_description:
:type display_description: str
:param unit:
:type unit: str
:param aggregation_type:
:type aggregation_type: str
:param supports_instance_level_aggregation:
:type supports_instance_level_aggregation: bool
:param enable_regional_mdm_account:
:type enable_regional_mdm_account: bool
:param source_mdm_account:
:type source_mdm_account: str
:param source_mdm_namespace:
:type source_mdm_namespace: str
:param metric_filter_pattern:
:type metric_filter_pattern: str
:param fill_gap_with_zero:
:type fill_gap_with_zero: bool
:param is_internal:
:type is_internal: bool
:param dimensions:
:type dimensions: list[~azure.mgmt.web.v2016_03_01.models.Dimension]
:param category:
:type category: str
:param availabilities:
:type availabilities:
list[~azure.mgmt.web.v2016_03_01.models.MetricAvailability]
"""
_attribute_map = {
'name': {'key': 'name', 'type': 'str'},
'display_name': {'key': 'displayName', 'type': 'str'},
'display_description': {'key': 'displayDescription', 'type': 'str'},
'unit': {'key': 'unit', 'type': 'str'},
'aggregation_type': {'key': 'aggregationType', 'type': 'str'},
'supports_instance_level_aggregation': {'key': 'supportsInstanceLevelAggregation', 'type': 'bool'},
'enable_regional_mdm_account': {'key': 'enableRegionalMdmAccount', 'type': 'bool'},
'source_mdm_account': {'key': 'sourceMdmAccount', 'type': 'str'},
'source_mdm_namespace': {'key': 'sourceMdmNamespace', 'type': 'str'},
'metric_filter_pattern': {'key': 'metricFilterPattern', 'type': 'str'},
'fill_gap_with_zero': {'key': 'fillGapWithZero', 'type': 'bool'},
'is_internal': {'key': 'isInternal', 'type': 'bool'},
'dimensions': {'key': 'dimensions', 'type': '[Dimension]'},
'category': {'key': 'category', 'type': 'str'},
'availabilities': {'key': 'availabilities', 'type': '[MetricAvailability]'},
}
def __init__(self, *, name: str=None, display_name: str=None, display_description: str=None, unit: str=None, aggregation_type: str=None, supports_instance_level_aggregation: bool=None, enable_regional_mdm_account: bool=None, source_mdm_account: str=None, source_mdm_namespace: str=None, metric_filter_pattern: str=None, fill_gap_with_zero: bool=None, is_internal: bool=None, dimensions=None, category: str=None, availabilities=None, **kwargs) -> None:
super(MetricSpecification, self).__init__(**kwargs)
self.name = name
self.display_name = display_name
self.display_description = display_description
self.unit = unit
self.aggregation_type = aggregation_type
self.supports_instance_level_aggregation = supports_instance_level_aggregation
self.enable_regional_mdm_account = enable_regional_mdm_account
self.source_mdm_account = source_mdm_account
self.source_mdm_namespace = source_mdm_namespace
self.metric_filter_pattern = metric_filter_pattern
self.fill_gap_with_zero = fill_gap_with_zero
self.is_internal = is_internal
self.dimensions = dimensions
self.category = category
self.availabilities = availabilities
[docs]class NameIdentifier(Model):
"""Identifies an object.
:param name: Name of the object.
:type name: str
"""
_attribute_map = {
'name': {'key': 'name', 'type': 'str'},
}
def __init__(self, *, name: str=None, **kwargs) -> None:
super(NameIdentifier, self).__init__(**kwargs)
self.name = name
[docs]class NameValuePair(Model):
"""Name value pair.
:param name: Pair name.
:type name: str
:param value: Pair value.
:type value: str
"""
_attribute_map = {
'name': {'key': 'name', 'type': 'str'},
'value': {'key': 'value', 'type': 'str'},
}
def __init__(self, *, name: str=None, value: str=None, **kwargs) -> None:
super(NameValuePair, self).__init__(**kwargs)
self.name = name
self.value = value
[docs]class NetworkAccessControlEntry(Model):
"""Network access control entry.
:param action: Action object. Possible values include: 'Permit', 'Deny'
:type action: str or
~azure.mgmt.web.v2016_03_01.models.AccessControlEntryAction
:param description: Description of network access control entry.
:type description: str
:param order: Order of precedence.
:type order: int
:param remote_subnet: Remote subnet.
:type remote_subnet: str
"""
_attribute_map = {
'action': {'key': 'action', 'type': 'AccessControlEntryAction'},
'description': {'key': 'description', 'type': 'str'},
'order': {'key': 'order', 'type': 'int'},
'remote_subnet': {'key': 'remoteSubnet', 'type': 'str'},
}
def __init__(self, *, action=None, description: str=None, order: int=None, remote_subnet: str=None, **kwargs) -> None:
super(NetworkAccessControlEntry, self).__init__(**kwargs)
self.action = action
self.description = description
self.order = order
self.remote_subnet = remote_subnet
[docs]class Operation(Model):
"""An operation on a resource.
:param id: Operation ID.
:type id: str
:param name: Operation name.
:type name: str
:param status: The current status of the operation. Possible values
include: 'InProgress', 'Failed', 'Succeeded', 'TimedOut', 'Created'
:type status: str or ~azure.mgmt.web.v2016_03_01.models.OperationStatus
:param errors: Any errors associate with the operation.
:type errors: list[~azure.mgmt.web.v2016_03_01.models.ErrorEntity]
:param created_time: Time when operation has started.
:type created_time: datetime
:param modified_time: Time when operation has been updated.
:type modified_time: datetime
:param expiration_time: Time when operation will expire.
:type expiration_time: datetime
:param geo_master_operation_id: Applicable only for stamp operation ids.
:type geo_master_operation_id: str
"""
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'status': {'key': 'status', 'type': 'OperationStatus'},
'errors': {'key': 'errors', 'type': '[ErrorEntity]'},
'created_time': {'key': 'createdTime', 'type': 'iso-8601'},
'modified_time': {'key': 'modifiedTime', 'type': 'iso-8601'},
'expiration_time': {'key': 'expirationTime', 'type': 'iso-8601'},
'geo_master_operation_id': {'key': 'geoMasterOperationId', 'type': 'str'},
}
def __init__(self, *, id: str=None, name: str=None, status=None, errors=None, created_time=None, modified_time=None, expiration_time=None, geo_master_operation_id: str=None, **kwargs) -> None:
super(Operation, self).__init__(**kwargs)
self.id = id
self.name = name
self.status = status
self.errors = errors
self.created_time = created_time
self.modified_time = modified_time
self.expiration_time = expiration_time
self.geo_master_operation_id = geo_master_operation_id
[docs]class PremierAddOnOffer(ProxyOnlyResource):
"""Premier add-on offer.
Variables are only populated by the server, and will be ignored when
sending a request.
:ivar id: Resource Id.
:vartype id: str
:ivar name: Resource Name.
:vartype name: str
:param kind: Kind of resource.
:type kind: str
:ivar type: Resource type.
:vartype type: str
:param sku: Premier add on SKU.
:type sku: str
:param product: Premier add on offer Product.
:type product: str
:param vendor: Premier add on offer Vendor.
:type vendor: str
:param premier_add_on_offer_name: Premier add on offer Name.
:type premier_add_on_offer_name: str
:param promo_code_required: <code>true</code> if promotion code is
required; otherwise, <code>false</code>.
:type promo_code_required: bool
:param quota: Premier add on offer Quota.
:type quota: int
:param web_hosting_plan_restrictions: App Service plans this offer is
restricted to. Possible values include: 'None', 'Free', 'Shared', 'Basic',
'Standard', 'Premium'
:type web_hosting_plan_restrictions: str or
~azure.mgmt.web.v2016_03_01.models.AppServicePlanRestrictions
:param privacy_policy_url: Privacy policy URL.
:type privacy_policy_url: str
:param legal_terms_url: Legal terms URL.
:type legal_terms_url: str
:param marketplace_publisher: Marketplace publisher.
:type marketplace_publisher: str
:param marketplace_offer: Marketplace offer.
:type marketplace_offer: str
"""
_validation = {
'id': {'readonly': True},
'name': {'readonly': True},
'type': {'readonly': True},
}
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'kind': {'key': 'kind', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
'sku': {'key': 'properties.sku', 'type': 'str'},
'product': {'key': 'properties.product', 'type': 'str'},
'vendor': {'key': 'properties.vendor', 'type': 'str'},
'premier_add_on_offer_name': {'key': 'properties.name', 'type': 'str'},
'promo_code_required': {'key': 'properties.promoCodeRequired', 'type': 'bool'},
'quota': {'key': 'properties.quota', 'type': 'int'},
'web_hosting_plan_restrictions': {'key': 'properties.webHostingPlanRestrictions', 'type': 'AppServicePlanRestrictions'},
'privacy_policy_url': {'key': 'properties.privacyPolicyUrl', 'type': 'str'},
'legal_terms_url': {'key': 'properties.legalTermsUrl', 'type': 'str'},
'marketplace_publisher': {'key': 'properties.marketplacePublisher', 'type': 'str'},
'marketplace_offer': {'key': 'properties.marketplaceOffer', 'type': 'str'},
}
def __init__(self, *, kind: str=None, sku: str=None, product: str=None, vendor: str=None, premier_add_on_offer_name: str=None, promo_code_required: bool=None, quota: int=None, web_hosting_plan_restrictions=None, privacy_policy_url: str=None, legal_terms_url: str=None, marketplace_publisher: str=None, marketplace_offer: str=None, **kwargs) -> None:
super(PremierAddOnOffer, self).__init__(kind=kind, **kwargs)
self.sku = sku
self.product = product
self.vendor = vendor
self.premier_add_on_offer_name = premier_add_on_offer_name
self.promo_code_required = promo_code_required
self.quota = quota
self.web_hosting_plan_restrictions = web_hosting_plan_restrictions
self.privacy_policy_url = privacy_policy_url
self.legal_terms_url = legal_terms_url
self.marketplace_publisher = marketplace_publisher
self.marketplace_offer = marketplace_offer
[docs]class PushSettings(ProxyOnlyResource):
"""Push settings for the App.
Variables are only populated by the server, and will be ignored when
sending a request.
All required parameters must be populated in order to send to Azure.
:ivar id: Resource Id.
:vartype id: str
:ivar name: Resource Name.
:vartype name: str
:param kind: Kind of resource.
:type kind: str
:ivar type: Resource type.
:vartype type: str
:param is_push_enabled: Required. Gets or sets a flag indicating whether
the Push endpoint is enabled.
:type is_push_enabled: bool
:param tag_whitelist_json: Gets or sets a JSON string containing a list of
tags that are whitelisted for use by the push registration endpoint.
:type tag_whitelist_json: str
:param tags_requiring_auth: Gets or sets a JSON string containing a list
of tags that require user authentication to be used in the push
registration endpoint.
Tags can consist of alphanumeric characters and the following:
'_', '@', '#', '.', ':', '-'.
Validation should be performed at the PushRequestHandler.
:type tags_requiring_auth: str
:param dynamic_tags_json: Gets or sets a JSON string containing a list of
dynamic tags that will be evaluated from user claims in the push
registration endpoint.
:type dynamic_tags_json: str
"""
_validation = {
'id': {'readonly': True},
'name': {'readonly': True},
'type': {'readonly': True},
'is_push_enabled': {'required': True},
}
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'kind': {'key': 'kind', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
'is_push_enabled': {'key': 'properties.isPushEnabled', 'type': 'bool'},
'tag_whitelist_json': {'key': 'properties.tagWhitelistJson', 'type': 'str'},
'tags_requiring_auth': {'key': 'properties.tagsRequiringAuth', 'type': 'str'},
'dynamic_tags_json': {'key': 'properties.dynamicTagsJson', 'type': 'str'},
}
def __init__(self, *, is_push_enabled: bool, kind: str=None, tag_whitelist_json: str=None, tags_requiring_auth: str=None, dynamic_tags_json: str=None, **kwargs) -> None:
super(PushSettings, self).__init__(kind=kind, **kwargs)
self.is_push_enabled = is_push_enabled
self.tag_whitelist_json = tag_whitelist_json
self.tags_requiring_auth = tags_requiring_auth
self.dynamic_tags_json = dynamic_tags_json
[docs]class RampUpRule(Model):
"""Routing rules for ramp up testing. This rule allows to redirect static
traffic % to a slot or to gradually change routing % based on performance.
:param action_host_name: Hostname of a slot to which the traffic will be
redirected if decided to. E.g. myapp-stage.azurewebsites.net.
:type action_host_name: str
:param reroute_percentage: Percentage of the traffic which will be
redirected to <code>ActionHostName</code>.
:type reroute_percentage: float
:param change_step: In auto ramp up scenario this is the step to
add/remove from <code>ReroutePercentage</code> until it reaches
<code>MinReroutePercentage</code> or <code>MaxReroutePercentage</code>.
Site metrics are checked every N minutes specified in
<code>ChangeIntervalInMinutes</code>.
Custom decision algorithm can be provided in TiPCallback site extension
which URL can be specified in <code>ChangeDecisionCallbackUrl</code>.
:type change_step: float
:param change_interval_in_minutes: Specifies interval in minutes to
reevaluate ReroutePercentage.
:type change_interval_in_minutes: int
:param min_reroute_percentage: Specifies lower boundary above which
ReroutePercentage will stay.
:type min_reroute_percentage: float
:param max_reroute_percentage: Specifies upper boundary below which
ReroutePercentage will stay.
:type max_reroute_percentage: float
:param change_decision_callback_url: Custom decision algorithm can be
provided in TiPCallback site extension which URL can be specified. See
TiPCallback site extension for the scaffold and contracts.
https://www.siteextensions.net/packages/TiPCallback/
:type change_decision_callback_url: str
:param name: Name of the routing rule. The recommended name would be to
point to the slot which will receive the traffic in the experiment.
:type name: str
"""
_attribute_map = {
'action_host_name': {'key': 'actionHostName', 'type': 'str'},
'reroute_percentage': {'key': 'reroutePercentage', 'type': 'float'},
'change_step': {'key': 'changeStep', 'type': 'float'},
'change_interval_in_minutes': {'key': 'changeIntervalInMinutes', 'type': 'int'},
'min_reroute_percentage': {'key': 'minReroutePercentage', 'type': 'float'},
'max_reroute_percentage': {'key': 'maxReroutePercentage', 'type': 'float'},
'change_decision_callback_url': {'key': 'changeDecisionCallbackUrl', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
}
def __init__(self, *, action_host_name: str=None, reroute_percentage: float=None, change_step: float=None, change_interval_in_minutes: int=None, min_reroute_percentage: float=None, max_reroute_percentage: float=None, change_decision_callback_url: str=None, name: str=None, **kwargs) -> None:
super(RampUpRule, self).__init__(**kwargs)
self.action_host_name = action_host_name
self.reroute_percentage = reroute_percentage
self.change_step = change_step
self.change_interval_in_minutes = change_interval_in_minutes
self.min_reroute_percentage = min_reroute_percentage
self.max_reroute_percentage = max_reroute_percentage
self.change_decision_callback_url = change_decision_callback_url
self.name = name
[docs]class Recommendation(ProxyOnlyResource):
"""Represents a recommendation result generated by the recommendation engine.
Variables are only populated by the server, and will be ignored when
sending a request.
:ivar id: Resource Id.
:vartype id: str
:ivar name: Resource Name.
:vartype name: str
:param kind: Kind of resource.
:type kind: str
:ivar type: Resource type.
:vartype type: str
:param creation_time: Timestamp when this instance was created.
:type creation_time: datetime
:param recommendation_id: A GUID value that each recommendation object is
associated with.
:type recommendation_id: str
:param resource_id: Full ARM resource ID string that this recommendation
object is associated with.
:type resource_id: str
:param resource_scope: Name of a resource type this recommendation
applies, e.g. Subscription, ServerFarm, Site. Possible values include:
'ServerFarm', 'Subscription', 'WebSite'
:type resource_scope: str or
~azure.mgmt.web.v2016_03_01.models.ResourceScopeType
:param rule_name: Unique name of the rule.
:type rule_name: str
:param display_name: UI friendly name of the rule (may not be unique).
:type display_name: str
:param message: Recommendation text.
:type message: str
:param level: Level indicating how critical this recommendation can
impact. Possible values include: 'Critical', 'Warning', 'Information',
'NonUrgentSuggestion'
:type level: str or ~azure.mgmt.web.v2016_03_01.models.NotificationLevel
:param channels: List of channels that this recommendation can apply.
Possible values include: 'Notification', 'Api', 'Email', 'Webhook', 'All'
:type channels: str or ~azure.mgmt.web.v2016_03_01.models.Channels
:param tags: The list of category tags that this recommendation belongs
to.
:type tags: list[str]
:param action_name: Name of action recommended by this object.
:type action_name: str
:param start_time: The beginning time in UTC of a range that the
recommendation refers to.
:type start_time: datetime
:param end_time: The end time in UTC of a range that the recommendation
refers to.
:type end_time: datetime
:param next_notification_time: When to notify this recommendation next in
UTC. Null means that this will never be notified anymore.
:type next_notification_time: datetime
:param notification_expiration_time: Date and time in UTC when this
notification expires.
:type notification_expiration_time: datetime
:param notified_time: Last timestamp in UTC this instance was actually
notified. Null means that this recommendation hasn't been notified yet.
:type notified_time: datetime
:param score: A metric value measured by the rule.
:type score: float
:param is_dynamic: True if this is associated with a dynamically added
rule
:type is_dynamic: bool
:param extension_name: Extension name of the portal if exists.
:type extension_name: str
:param blade_name: Deep link to a blade on the portal.
:type blade_name: str
:param forward_link: Forward link to an external document associated with
the rule.
:type forward_link: str
"""
_validation = {
'id': {'readonly': True},
'name': {'readonly': True},
'type': {'readonly': True},
}
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'kind': {'key': 'kind', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
'creation_time': {'key': 'properties.creationTime', 'type': 'iso-8601'},
'recommendation_id': {'key': 'properties.recommendationId', 'type': 'str'},
'resource_id': {'key': 'properties.resourceId', 'type': 'str'},
'resource_scope': {'key': 'properties.resourceScope', 'type': 'str'},
'rule_name': {'key': 'properties.ruleName', 'type': 'str'},
'display_name': {'key': 'properties.displayName', 'type': 'str'},
'message': {'key': 'properties.message', 'type': 'str'},
'level': {'key': 'properties.level', 'type': 'NotificationLevel'},
'channels': {'key': 'properties.channels', 'type': 'Channels'},
'tags': {'key': 'properties.tags', 'type': '[str]'},
'action_name': {'key': 'properties.actionName', 'type': 'str'},
'start_time': {'key': 'properties.startTime', 'type': 'iso-8601'},
'end_time': {'key': 'properties.endTime', 'type': 'iso-8601'},
'next_notification_time': {'key': 'properties.nextNotificationTime', 'type': 'iso-8601'},
'notification_expiration_time': {'key': 'properties.notificationExpirationTime', 'type': 'iso-8601'},
'notified_time': {'key': 'properties.notifiedTime', 'type': 'iso-8601'},
'score': {'key': 'properties.score', 'type': 'float'},
'is_dynamic': {'key': 'properties.isDynamic', 'type': 'bool'},
'extension_name': {'key': 'properties.extensionName', 'type': 'str'},
'blade_name': {'key': 'properties.bladeName', 'type': 'str'},
'forward_link': {'key': 'properties.forwardLink', 'type': 'str'},
}
def __init__(self, *, kind: str=None, creation_time=None, recommendation_id: str=None, resource_id: str=None, resource_scope=None, rule_name: str=None, display_name: str=None, message: str=None, level=None, channels=None, tags=None, action_name: str=None, start_time=None, end_time=None, next_notification_time=None, notification_expiration_time=None, notified_time=None, score: float=None, is_dynamic: bool=None, extension_name: str=None, blade_name: str=None, forward_link: str=None, **kwargs) -> None:
super(Recommendation, self).__init__(kind=kind, **kwargs)
self.creation_time = creation_time
self.recommendation_id = recommendation_id
self.resource_id = resource_id
self.resource_scope = resource_scope
self.rule_name = rule_name
self.display_name = display_name
self.message = message
self.level = level
self.channels = channels
self.tags = tags
self.action_name = action_name
self.start_time = start_time
self.end_time = end_time
self.next_notification_time = next_notification_time
self.notification_expiration_time = notification_expiration_time
self.notified_time = notified_time
self.score = score
self.is_dynamic = is_dynamic
self.extension_name = extension_name
self.blade_name = blade_name
self.forward_link = forward_link
[docs]class RecommendationRule(ProxyOnlyResource):
"""Represents a recommendation rule that the recommendation engine can
perform.
Variables are only populated by the server, and will be ignored when
sending a request.
:ivar id: Resource Id.
:vartype id: str
:ivar name: Resource Name.
:vartype name: str
:param kind: Kind of resource.
:type kind: str
:ivar type: Resource type.
:vartype type: str
:param recommendation_rule_name: Unique name of the rule.
:type recommendation_rule_name: str
:param display_name: UI friendly name of the rule.
:type display_name: str
:param message: Localized name of the rule (Good for UI).
:type message: str
:param recommendation_id: Recommendation ID of an associated
recommendation object tied to the rule, if exists.
If such an object doesn't exist, it is set to null.
:type recommendation_id: str
:param description: Localized detailed description of the rule.
:type description: str
:param action_name: Name of action that is recommended by this rule in
string.
:type action_name: str
:param level: Level of impact indicating how critical this rule is.
Possible values include: 'Critical', 'Warning', 'Information',
'NonUrgentSuggestion'
:type level: str or ~azure.mgmt.web.v2016_03_01.models.NotificationLevel
:param channels: List of available channels that this rule applies.
Possible values include: 'Notification', 'Api', 'Email', 'Webhook', 'All'
:type channels: str or ~azure.mgmt.web.v2016_03_01.models.Channels
:param tags: An array of category tags that the rule contains.
:type tags: list[str]
:param is_dynamic: True if this is associated with a dynamically added
rule
:type is_dynamic: bool
:param extension_name: Extension name of the portal if exists. Applicable
to dynamic rule only.
:type extension_name: str
:param blade_name: Deep link to a blade on the portal. Applicable to
dynamic rule only.
:type blade_name: str
:param forward_link: Forward link to an external document associated with
the rule. Applicable to dynamic rule only.
:type forward_link: str
"""
_validation = {
'id': {'readonly': True},
'name': {'readonly': True},
'type': {'readonly': True},
}
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'kind': {'key': 'kind', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
'recommendation_rule_name': {'key': 'properties.name', 'type': 'str'},
'display_name': {'key': 'properties.displayName', 'type': 'str'},
'message': {'key': 'properties.message', 'type': 'str'},
'recommendation_id': {'key': 'properties.recommendationId', 'type': 'str'},
'description': {'key': 'properties.description', 'type': 'str'},
'action_name': {'key': 'properties.actionName', 'type': 'str'},
'level': {'key': 'properties.level', 'type': 'NotificationLevel'},
'channels': {'key': 'properties.channels', 'type': 'Channels'},
'tags': {'key': 'properties.tags', 'type': '[str]'},
'is_dynamic': {'key': 'properties.isDynamic', 'type': 'bool'},
'extension_name': {'key': 'properties.extensionName', 'type': 'str'},
'blade_name': {'key': 'properties.bladeName', 'type': 'str'},
'forward_link': {'key': 'properties.forwardLink', 'type': 'str'},
}
def __init__(self, *, kind: str=None, recommendation_rule_name: str=None, display_name: str=None, message: str=None, recommendation_id: str=None, description: str=None, action_name: str=None, level=None, channels=None, tags=None, is_dynamic: bool=None, extension_name: str=None, blade_name: str=None, forward_link: str=None, **kwargs) -> None:
super(RecommendationRule, self).__init__(kind=kind, **kwargs)
self.recommendation_rule_name = recommendation_rule_name
self.display_name = display_name
self.message = message
self.recommendation_id = recommendation_id
self.description = description
self.action_name = action_name
self.level = level
self.channels = channels
self.tags = tags
self.is_dynamic = is_dynamic
self.extension_name = extension_name
self.blade_name = blade_name
self.forward_link = forward_link
[docs]class Rendering(Model):
"""Instructions for rendering the data.
:param rendering_type: Rendering Type. Possible values include: 'NoGraph',
'Table', 'TimeSeries', 'TimeSeriesPerInstance'
:type rendering_type: str or
~azure.mgmt.web.v2016_03_01.models.RenderingType
:param title: Title of data
:type title: str
:param description: Description of the data that will help it be
interpreted
:type description: str
"""
_attribute_map = {
'rendering_type': {'key': 'renderingType', 'type': 'RenderingType'},
'title': {'key': 'title', 'type': 'str'},
'description': {'key': 'description', 'type': 'str'},
}
def __init__(self, *, rendering_type=None, title: str=None, description: str=None, **kwargs) -> None:
super(Rendering, self).__init__(**kwargs)
self.rendering_type = rendering_type
self.title = title
self.description = description
[docs]class RequestsBasedTrigger(Model):
"""Trigger based on total requests.
:param count: Request Count.
:type count: int
:param time_interval: Time interval.
:type time_interval: str
"""
_attribute_map = {
'count': {'key': 'count', 'type': 'int'},
'time_interval': {'key': 'timeInterval', 'type': 'str'},
}
def __init__(self, *, count: int=None, time_interval: str=None, **kwargs) -> None:
super(RequestsBasedTrigger, self).__init__(**kwargs)
self.count = count
self.time_interval = time_interval
[docs]class ResourceMetric(Model):
"""Object representing a metric for any resource .
Variables are only populated by the server, and will be ignored when
sending a request.
:ivar name: Name of metric.
:vartype name: ~azure.mgmt.web.v2016_03_01.models.ResourceMetricName
:ivar unit: Metric unit.
:vartype unit: str
:ivar time_grain: Metric granularity. E.g PT1H, PT5M, P1D
:vartype time_grain: str
:ivar start_time: Metric start time.
:vartype start_time: datetime
:ivar end_time: Metric end time.
:vartype end_time: datetime
:ivar resource_id: Metric resource Id.
:vartype resource_id: str
:ivar id: Resource Id.
:vartype id: str
:ivar metric_values: Metric values.
:vartype metric_values:
list[~azure.mgmt.web.v2016_03_01.models.ResourceMetricValue]
:ivar properties: Resource metric properties collection.
:vartype properties:
list[~azure.mgmt.web.v2016_03_01.models.ResourceMetricProperty]
"""
_validation = {
'name': {'readonly': True},
'unit': {'readonly': True},
'time_grain': {'readonly': True},
'start_time': {'readonly': True},
'end_time': {'readonly': True},
'resource_id': {'readonly': True},
'id': {'readonly': True},
'metric_values': {'readonly': True},
'properties': {'readonly': True},
}
_attribute_map = {
'name': {'key': 'name', 'type': 'ResourceMetricName'},
'unit': {'key': 'unit', 'type': 'str'},
'time_grain': {'key': 'timeGrain', 'type': 'str'},
'start_time': {'key': 'startTime', 'type': 'iso-8601'},
'end_time': {'key': 'endTime', 'type': 'iso-8601'},
'resource_id': {'key': 'resourceId', 'type': 'str'},
'id': {'key': 'id', 'type': 'str'},
'metric_values': {'key': 'metricValues', 'type': '[ResourceMetricValue]'},
'properties': {'key': 'properties', 'type': '[ResourceMetricProperty]'},
}
def __init__(self, **kwargs) -> None:
super(ResourceMetric, self).__init__(**kwargs)
self.name = None
self.unit = None
self.time_grain = None
self.start_time = None
self.end_time = None
self.resource_id = None
self.id = None
self.metric_values = None
self.properties = None
[docs]class ResourceMetricAvailability(Model):
"""Metrics availability and retention.
Variables are only populated by the server, and will be ignored when
sending a request.
:ivar time_grain: Time grain .
:vartype time_grain: str
:ivar retention: Retention period for the current time grain.
:vartype retention: str
"""
_validation = {
'time_grain': {'readonly': True},
'retention': {'readonly': True},
}
_attribute_map = {
'time_grain': {'key': 'timeGrain', 'type': 'str'},
'retention': {'key': 'retention', 'type': 'str'},
}
def __init__(self, **kwargs) -> None:
super(ResourceMetricAvailability, self).__init__(**kwargs)
self.time_grain = None
self.retention = None
[docs]class ResourceMetricCollection(Model):
"""Collection of metric responses.
Variables are only populated by the server, and will be ignored when
sending a request.
All required parameters must be populated in order to send to Azure.
:param value: Required. Collection of resources.
:type value: list[~azure.mgmt.web.v2016_03_01.models.ResourceMetric]
:ivar next_link: Link to next page of resources.
:vartype next_link: str
"""
_validation = {
'value': {'required': True},
'next_link': {'readonly': True},
}
_attribute_map = {
'value': {'key': 'value', 'type': '[ResourceMetric]'},
'next_link': {'key': 'nextLink', 'type': 'str'},
}
def __init__(self, *, value, **kwargs) -> None:
super(ResourceMetricCollection, self).__init__(**kwargs)
self.value = value
self.next_link = None
[docs]class ResourceMetricDefinition(ProxyOnlyResource):
"""Metadata for the metrics.
Variables are only populated by the server, and will be ignored when
sending a request.
:ivar id: Resource Id.
:vartype id: str
:ivar name: Resource Name.
:vartype name: str
:param kind: Kind of resource.
:type kind: str
:ivar type: Resource type.
:vartype type: str
:ivar resource_metric_definition_name: Name of the metric.
:vartype resource_metric_definition_name:
~azure.mgmt.web.v2016_03_01.models.ResourceMetricName
:ivar unit: Unit of the metric.
:vartype unit: str
:ivar primary_aggregation_type: Primary aggregation type.
:vartype primary_aggregation_type: str
:ivar metric_availabilities: List of time grains supported for the metric
together with retention period.
:vartype metric_availabilities:
list[~azure.mgmt.web.v2016_03_01.models.ResourceMetricAvailability]
:ivar resource_uri: Resource URI.
:vartype resource_uri: str
:ivar resource_metric_definition_id: Resource ID.
:vartype resource_metric_definition_id: str
:ivar properties: Resource metric definition properties.
:vartype properties: dict[str, str]
"""
_validation = {
'id': {'readonly': True},
'name': {'readonly': True},
'type': {'readonly': True},
'resource_metric_definition_name': {'readonly': True},
'unit': {'readonly': True},
'primary_aggregation_type': {'readonly': True},
'metric_availabilities': {'readonly': True},
'resource_uri': {'readonly': True},
'resource_metric_definition_id': {'readonly': True},
'properties': {'readonly': True},
}
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'kind': {'key': 'kind', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
'resource_metric_definition_name': {'key': 'properties.name', 'type': 'ResourceMetricName'},
'unit': {'key': 'properties.unit', 'type': 'str'},
'primary_aggregation_type': {'key': 'properties.primaryAggregationType', 'type': 'str'},
'metric_availabilities': {'key': 'properties.metricAvailabilities', 'type': '[ResourceMetricAvailability]'},
'resource_uri': {'key': 'properties.resourceUri', 'type': 'str'},
'resource_metric_definition_id': {'key': 'properties.id', 'type': 'str'},
'properties': {'key': 'properties.properties', 'type': '{str}'},
}
def __init__(self, *, kind: str=None, **kwargs) -> None:
super(ResourceMetricDefinition, self).__init__(kind=kind, **kwargs)
self.resource_metric_definition_name = None
self.unit = None
self.primary_aggregation_type = None
self.metric_availabilities = None
self.resource_uri = None
self.resource_metric_definition_id = None
self.properties = None
[docs]class ResourceMetricDefinitionCollection(Model):
"""Collection of metric definitions.
Variables are only populated by the server, and will be ignored when
sending a request.
All required parameters must be populated in order to send to Azure.
:param value: Required. Collection of resources.
:type value:
list[~azure.mgmt.web.v2016_03_01.models.ResourceMetricDefinition]
:ivar next_link: Link to next page of resources.
:vartype next_link: str
"""
_validation = {
'value': {'required': True},
'next_link': {'readonly': True},
}
_attribute_map = {
'value': {'key': 'value', 'type': '[ResourceMetricDefinition]'},
'next_link': {'key': 'nextLink', 'type': 'str'},
}
def __init__(self, *, value, **kwargs) -> None:
super(ResourceMetricDefinitionCollection, self).__init__(**kwargs)
self.value = value
self.next_link = None
[docs]class ResourceMetricName(Model):
"""Name of a metric for any resource .
Variables are only populated by the server, and will be ignored when
sending a request.
:ivar value: metric name value.
:vartype value: str
:ivar localized_value: Localized metric name value.
:vartype localized_value: str
"""
_validation = {
'value': {'readonly': True},
'localized_value': {'readonly': True},
}
_attribute_map = {
'value': {'key': 'value', 'type': 'str'},
'localized_value': {'key': 'localizedValue', 'type': 'str'},
}
def __init__(self, **kwargs) -> None:
super(ResourceMetricName, self).__init__(**kwargs)
self.value = None
self.localized_value = None
[docs]class ResourceMetricProperty(Model):
"""Resource metric property.
:param key: Key for resource metric property.
:type key: str
:param value: Value of pair.
:type value: str
"""
_attribute_map = {
'key': {'key': 'key', 'type': 'str'},
'value': {'key': 'value', 'type': 'str'},
}
def __init__(self, *, key: str=None, value: str=None, **kwargs) -> None:
super(ResourceMetricProperty, self).__init__(**kwargs)
self.key = key
self.value = value
[docs]class ResourceMetricValue(Model):
"""Value of resource metric.
Variables are only populated by the server, and will be ignored when
sending a request.
:ivar timestamp: Value timestamp.
:vartype timestamp: str
:ivar average: Value average.
:vartype average: float
:ivar minimum: Value minimum.
:vartype minimum: float
:ivar maximum: Value maximum.
:vartype maximum: float
:ivar total: Value total.
:vartype total: float
:ivar count: Value count.
:vartype count: float
:ivar properties: Resource metric properties collection.
:vartype properties:
list[~azure.mgmt.web.v2016_03_01.models.ResourceMetricProperty]
"""
_validation = {
'timestamp': {'readonly': True},
'average': {'readonly': True},
'minimum': {'readonly': True},
'maximum': {'readonly': True},
'total': {'readonly': True},
'count': {'readonly': True},
'properties': {'readonly': True},
}
_attribute_map = {
'timestamp': {'key': 'timestamp', 'type': 'str'},
'average': {'key': 'average', 'type': 'float'},
'minimum': {'key': 'minimum', 'type': 'float'},
'maximum': {'key': 'maximum', 'type': 'float'},
'total': {'key': 'total', 'type': 'float'},
'count': {'key': 'count', 'type': 'float'},
'properties': {'key': 'properties', 'type': '[ResourceMetricProperty]'},
}
def __init__(self, **kwargs) -> None:
super(ResourceMetricValue, self).__init__(**kwargs)
self.timestamp = None
self.average = None
self.minimum = None
self.maximum = None
self.total = None
self.count = None
self.properties = None
[docs]class ResourceNameAvailability(Model):
"""Information regarding availability of a resource name.
:param name_available: <code>true</code> indicates name is valid and
available. <code>false</code> indicates the name is invalid, unavailable,
or both.
:type name_available: bool
:param reason: <code>Invalid</code> indicates the name provided does not
match Azure App Service naming requirements. <code>AlreadyExists</code>
indicates that the name is already in use and is therefore unavailable.
Possible values include: 'Invalid', 'AlreadyExists'
:type reason: str or
~azure.mgmt.web.v2016_03_01.models.InAvailabilityReasonType
:param message: If reason == invalid, provide the user with the reason why
the given name is invalid, and provide the resource naming requirements so
that the user can select a valid name. If reason == AlreadyExists, explain
that resource name is already in use, and direct them to select a
different name.
:type message: str
"""
_attribute_map = {
'name_available': {'key': 'nameAvailable', 'type': 'bool'},
'reason': {'key': 'reason', 'type': 'str'},
'message': {'key': 'message', 'type': 'str'},
}
def __init__(self, *, name_available: bool=None, reason=None, message: str=None, **kwargs) -> None:
super(ResourceNameAvailability, self).__init__(**kwargs)
self.name_available = name_available
self.reason = reason
self.message = message
[docs]class ResourceNameAvailabilityRequest(Model):
"""Resource name availability request content.
All required parameters must be populated in order to send to Azure.
:param name: Required. Resource name to verify.
:type name: str
:param type: Required. Resource type used for verification. Possible
values include: 'Site', 'Slot', 'HostingEnvironment', 'PublishingUser',
'Microsoft.Web/sites', 'Microsoft.Web/sites/slots',
'Microsoft.Web/hostingEnvironments', 'Microsoft.Web/publishingUsers'
:type type: str or
~azure.mgmt.web.v2016_03_01.models.CheckNameResourceTypes
:param is_fqdn: Is fully qualified domain name.
:type is_fqdn: bool
"""
_validation = {
'name': {'required': True},
'type': {'required': True},
}
_attribute_map = {
'name': {'key': 'name', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
'is_fqdn': {'key': 'isFqdn', 'type': 'bool'},
}
def __init__(self, *, name: str, type, is_fqdn: bool=None, **kwargs) -> None:
super(ResourceNameAvailabilityRequest, self).__init__(**kwargs)
self.name = name
self.type = type
self.is_fqdn = is_fqdn
[docs]class ServiceSpecification(Model):
"""Resource metrics service provided by Microsoft.Insights resource provider.
:param metric_specifications:
:type metric_specifications:
list[~azure.mgmt.web.v2016_03_01.models.MetricSpecification]
"""
_attribute_map = {
'metric_specifications': {'key': 'metricSpecifications', 'type': '[MetricSpecification]'},
}
def __init__(self, *, metric_specifications=None, **kwargs) -> None:
super(ServiceSpecification, self).__init__(**kwargs)
self.metric_specifications = metric_specifications
[docs]class Site(Resource):
"""A web app, a mobile app backend, or an API app.
Variables are only populated by the server, and will be ignored when
sending a request.
All required parameters must be populated in order to send to Azure.
:ivar id: Resource Id.
:vartype id: str
:ivar name: Resource Name.
:vartype name: str
:param kind: Kind of resource.
:type kind: str
:param location: Required. Resource Location.
:type location: str
:ivar type: Resource type.
:vartype type: str
:param tags: Resource tags.
:type tags: dict[str, str]
:ivar state: Current state of the app.
:vartype state: str
:ivar host_names: Hostnames associated with the app.
:vartype host_names: list[str]
:ivar repository_site_name: Name of the repository site.
:vartype repository_site_name: str
:ivar usage_state: State indicating whether the app has exceeded its quota
usage. Read-only. Possible values include: 'Normal', 'Exceeded'
:vartype usage_state: str or ~azure.mgmt.web.v2016_03_01.models.UsageState
:param enabled: <code>true</code> if the app is enabled; otherwise,
<code>false</code>. Setting this value to false disables the app (takes
the app offline).
:type enabled: bool
:ivar enabled_host_names: Enabled hostnames for the app.Hostnames need to
be assigned (see HostNames) AND enabled. Otherwise,
the app is not served on those hostnames.
:vartype enabled_host_names: list[str]
:ivar availability_state: Management information availability state for
the app. Possible values include: 'Normal', 'Limited',
'DisasterRecoveryMode'
:vartype availability_state: str or
~azure.mgmt.web.v2016_03_01.models.SiteAvailabilityState
:param host_name_ssl_states: Hostname SSL states are used to manage the
SSL bindings for app's hostnames.
:type host_name_ssl_states:
list[~azure.mgmt.web.v2016_03_01.models.HostNameSslState]
:param server_farm_id: Resource ID of the associated App Service plan,
formatted as:
"/subscriptions/{subscriptionID}/resourceGroups/{groupName}/providers/Microsoft.Web/serverfarms/{appServicePlanName}".
:type server_farm_id: str
:param reserved: <code>true</code> if reserved; otherwise,
<code>false</code>. Default value: False .
:type reserved: bool
:ivar last_modified_time_utc: Last time the app was modified, in UTC.
Read-only.
:vartype last_modified_time_utc: datetime
:param site_config: Configuration of the app.
:type site_config: ~azure.mgmt.web.v2016_03_01.models.SiteConfig
:ivar traffic_manager_host_names: Azure Traffic Manager hostnames
associated with the app. Read-only.
:vartype traffic_manager_host_names: list[str]
:param scm_site_also_stopped: <code>true</code> to stop SCM (KUDU) site
when the app is stopped; otherwise, <code>false</code>. The default is
<code>false</code>. Default value: False .
:type scm_site_also_stopped: bool
:ivar target_swap_slot: Specifies which deployment slot this app will swap
into. Read-only.
:vartype target_swap_slot: str
:param hosting_environment_profile: App Service Environment to use for the
app.
:type hosting_environment_profile:
~azure.mgmt.web.v2016_03_01.models.HostingEnvironmentProfile
:param client_affinity_enabled: <code>true</code> to enable client
affinity; <code>false</code> to stop sending session affinity cookies,
which route client requests in the same session to the same instance.
Default is <code>true</code>.
:type client_affinity_enabled: bool
:param client_cert_enabled: <code>true</code> to enable client certificate
authentication (TLS mutual authentication); otherwise, <code>false</code>.
Default is <code>false</code>.
:type client_cert_enabled: bool
:param host_names_disabled: <code>true</code> to disable the public
hostnames of the app; otherwise, <code>false</code>.
If <code>true</code>, the app is only accessible via API management
process.
:type host_names_disabled: bool
:ivar outbound_ip_addresses: List of IP addresses that the app uses for
outbound connections (e.g. database access). Includes VIPs from tenants
that site can be hosted with current settings. Read-only.
:vartype outbound_ip_addresses: str
:ivar possible_outbound_ip_addresses: List of IP addresses that the app
uses for outbound connections (e.g. database access). Includes VIPs from
all tenants. Read-only.
:vartype possible_outbound_ip_addresses: str
:param container_size: Size of the function container.
:type container_size: int
:param daily_memory_time_quota: Maximum allowed daily memory-time quota
(applicable on dynamic apps only).
:type daily_memory_time_quota: int
:ivar suspended_till: App suspended till in case memory-time quota is
exceeded.
:vartype suspended_till: datetime
:ivar max_number_of_workers: Maximum number of workers.
This only applies to Functions container.
:vartype max_number_of_workers: int
:param cloning_info: If specified during app creation, the app is cloned
from a source app.
:type cloning_info: ~azure.mgmt.web.v2016_03_01.models.CloningInfo
:param snapshot_info: If specified during app creation, the app is created
from a previous snapshot.
:type snapshot_info:
~azure.mgmt.web.v2016_03_01.models.SnapshotRecoveryRequest
:ivar resource_group: Name of the resource group the app belongs to.
Read-only.
:vartype resource_group: str
:ivar is_default_container: <code>true</code> if the app is a default
container; otherwise, <code>false</code>.
:vartype is_default_container: bool
:ivar default_host_name: Default hostname of the app. Read-only.
:vartype default_host_name: str
:ivar slot_swap_status: Status of the last deployment slot swap operation.
:vartype slot_swap_status:
~azure.mgmt.web.v2016_03_01.models.SlotSwapStatus
:param https_only: HttpsOnly: configures a web site to accept only https
requests. Issues redirect for
http requests
:type https_only: bool
:param identity:
:type identity: ~azure.mgmt.web.v2016_03_01.models.ManagedServiceIdentity
"""
_validation = {
'id': {'readonly': True},
'name': {'readonly': True},
'location': {'required': True},
'type': {'readonly': True},
'state': {'readonly': True},
'host_names': {'readonly': True},
'repository_site_name': {'readonly': True},
'usage_state': {'readonly': True},
'enabled_host_names': {'readonly': True},
'availability_state': {'readonly': True},
'last_modified_time_utc': {'readonly': True},
'traffic_manager_host_names': {'readonly': True},
'target_swap_slot': {'readonly': True},
'outbound_ip_addresses': {'readonly': True},
'possible_outbound_ip_addresses': {'readonly': True},
'suspended_till': {'readonly': True},
'max_number_of_workers': {'readonly': True},
'resource_group': {'readonly': True},
'is_default_container': {'readonly': True},
'default_host_name': {'readonly': True},
'slot_swap_status': {'readonly': True},
}
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'kind': {'key': 'kind', 'type': 'str'},
'location': {'key': 'location', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
'tags': {'key': 'tags', 'type': '{str}'},
'state': {'key': 'properties.state', 'type': 'str'},
'host_names': {'key': 'properties.hostNames', 'type': '[str]'},
'repository_site_name': {'key': 'properties.repositorySiteName', 'type': 'str'},
'usage_state': {'key': 'properties.usageState', 'type': 'UsageState'},
'enabled': {'key': 'properties.enabled', 'type': 'bool'},
'enabled_host_names': {'key': 'properties.enabledHostNames', 'type': '[str]'},
'availability_state': {'key': 'properties.availabilityState', 'type': 'SiteAvailabilityState'},
'host_name_ssl_states': {'key': 'properties.hostNameSslStates', 'type': '[HostNameSslState]'},
'server_farm_id': {'key': 'properties.serverFarmId', 'type': 'str'},
'reserved': {'key': 'properties.reserved', 'type': 'bool'},
'last_modified_time_utc': {'key': 'properties.lastModifiedTimeUtc', 'type': 'iso-8601'},
'site_config': {'key': 'properties.siteConfig', 'type': 'SiteConfig'},
'traffic_manager_host_names': {'key': 'properties.trafficManagerHostNames', 'type': '[str]'},
'scm_site_also_stopped': {'key': 'properties.scmSiteAlsoStopped', 'type': 'bool'},
'target_swap_slot': {'key': 'properties.targetSwapSlot', 'type': 'str'},
'hosting_environment_profile': {'key': 'properties.hostingEnvironmentProfile', 'type': 'HostingEnvironmentProfile'},
'client_affinity_enabled': {'key': 'properties.clientAffinityEnabled', 'type': 'bool'},
'client_cert_enabled': {'key': 'properties.clientCertEnabled', 'type': 'bool'},
'host_names_disabled': {'key': 'properties.hostNamesDisabled', 'type': 'bool'},
'outbound_ip_addresses': {'key': 'properties.outboundIpAddresses', 'type': 'str'},
'possible_outbound_ip_addresses': {'key': 'properties.possibleOutboundIpAddresses', 'type': 'str'},
'container_size': {'key': 'properties.containerSize', 'type': 'int'},
'daily_memory_time_quota': {'key': 'properties.dailyMemoryTimeQuota', 'type': 'int'},
'suspended_till': {'key': 'properties.suspendedTill', 'type': 'iso-8601'},
'max_number_of_workers': {'key': 'properties.maxNumberOfWorkers', 'type': 'int'},
'cloning_info': {'key': 'properties.cloningInfo', 'type': 'CloningInfo'},
'snapshot_info': {'key': 'properties.snapshotInfo', 'type': 'SnapshotRecoveryRequest'},
'resource_group': {'key': 'properties.resourceGroup', 'type': 'str'},
'is_default_container': {'key': 'properties.isDefaultContainer', 'type': 'bool'},
'default_host_name': {'key': 'properties.defaultHostName', 'type': 'str'},
'slot_swap_status': {'key': 'properties.slotSwapStatus', 'type': 'SlotSwapStatus'},
'https_only': {'key': 'properties.httpsOnly', 'type': 'bool'},
'identity': {'key': 'identity', 'type': 'ManagedServiceIdentity'},
}
def __init__(self, *, location: str, kind: str=None, tags=None, enabled: bool=None, host_name_ssl_states=None, server_farm_id: str=None, reserved: bool=False, site_config=None, scm_site_also_stopped: bool=False, hosting_environment_profile=None, client_affinity_enabled: bool=None, client_cert_enabled: bool=None, host_names_disabled: bool=None, container_size: int=None, daily_memory_time_quota: int=None, cloning_info=None, snapshot_info=None, https_only: bool=None, identity=None, **kwargs) -> None:
super(Site, self).__init__(kind=kind, location=location, tags=tags, **kwargs)
self.state = None
self.host_names = None
self.repository_site_name = None
self.usage_state = None
self.enabled = enabled
self.enabled_host_names = None
self.availability_state = None
self.host_name_ssl_states = host_name_ssl_states
self.server_farm_id = server_farm_id
self.reserved = reserved
self.last_modified_time_utc = None
self.site_config = site_config
self.traffic_manager_host_names = None
self.scm_site_also_stopped = scm_site_also_stopped
self.target_swap_slot = None
self.hosting_environment_profile = hosting_environment_profile
self.client_affinity_enabled = client_affinity_enabled
self.client_cert_enabled = client_cert_enabled
self.host_names_disabled = host_names_disabled
self.outbound_ip_addresses = None
self.possible_outbound_ip_addresses = None
self.container_size = container_size
self.daily_memory_time_quota = daily_memory_time_quota
self.suspended_till = None
self.max_number_of_workers = None
self.cloning_info = cloning_info
self.snapshot_info = snapshot_info
self.resource_group = None
self.is_default_container = None
self.default_host_name = None
self.slot_swap_status = None
self.https_only = https_only
self.identity = identity
[docs]class SiteConfig(Model):
"""Configuration of an App Service app.
Variables are only populated by the server, and will be ignored when
sending a request.
:param number_of_workers: Number of workers.
:type number_of_workers: int
:param default_documents: Default documents.
:type default_documents: list[str]
:param net_framework_version: .NET Framework version. Default value:
"v4.6" .
:type net_framework_version: str
:param php_version: Version of PHP.
:type php_version: str
:param python_version: Version of Python.
:type python_version: str
:param node_version: Version of Node.js.
:type node_version: str
:param linux_fx_version: Linux App Framework and version
:type linux_fx_version: str
:param request_tracing_enabled: <code>true</code> if request tracing is
enabled; otherwise, <code>false</code>.
:type request_tracing_enabled: bool
:param request_tracing_expiration_time: Request tracing expiration time.
:type request_tracing_expiration_time: datetime
:param remote_debugging_enabled: <code>true</code> if remote debugging is
enabled; otherwise, <code>false</code>.
:type remote_debugging_enabled: bool
:param remote_debugging_version: Remote debugging version.
:type remote_debugging_version: str
:param http_logging_enabled: <code>true</code> if HTTP logging is enabled;
otherwise, <code>false</code>.
:type http_logging_enabled: bool
:param logs_directory_size_limit: HTTP logs directory size limit.
:type logs_directory_size_limit: int
:param detailed_error_logging_enabled: <code>true</code> if detailed error
logging is enabled; otherwise, <code>false</code>.
:type detailed_error_logging_enabled: bool
:param publishing_username: Publishing user name.
:type publishing_username: str
:param app_settings: Application settings.
:type app_settings: list[~azure.mgmt.web.v2016_03_01.models.NameValuePair]
:param connection_strings: Connection strings.
:type connection_strings:
list[~azure.mgmt.web.v2016_03_01.models.ConnStringInfo]
:ivar machine_key: Site MachineKey.
:vartype machine_key: ~azure.mgmt.web.v2016_03_01.models.SiteMachineKey
:param handler_mappings: Handler mappings.
:type handler_mappings:
list[~azure.mgmt.web.v2016_03_01.models.HandlerMapping]
:param document_root: Document root.
:type document_root: str
:param scm_type: SCM type. Possible values include: 'None', 'Dropbox',
'Tfs', 'LocalGit', 'GitHub', 'CodePlexGit', 'CodePlexHg', 'BitbucketGit',
'BitbucketHg', 'ExternalGit', 'ExternalHg', 'OneDrive', 'VSO'
:type scm_type: str or ~azure.mgmt.web.v2016_03_01.models.ScmType
:param use32_bit_worker_process: <code>true</code> to use 32-bit worker
process; otherwise, <code>false</code>.
:type use32_bit_worker_process: bool
:param web_sockets_enabled: <code>true</code> if WebSocket is enabled;
otherwise, <code>false</code>.
:type web_sockets_enabled: bool
:param always_on: <code>true</code> if Always On is enabled; otherwise,
<code>false</code>.
:type always_on: bool
:param java_version: Java version.
:type java_version: str
:param java_container: Java container.
:type java_container: str
:param java_container_version: Java container version.
:type java_container_version: str
:param app_command_line: App command line to launch.
:type app_command_line: str
:param managed_pipeline_mode: Managed pipeline mode. Possible values
include: 'Integrated', 'Classic'
:type managed_pipeline_mode: str or
~azure.mgmt.web.v2016_03_01.models.ManagedPipelineMode
:param virtual_applications: Virtual applications.
:type virtual_applications:
list[~azure.mgmt.web.v2016_03_01.models.VirtualApplication]
:param load_balancing: Site load balancing. Possible values include:
'WeightedRoundRobin', 'LeastRequests', 'LeastResponseTime',
'WeightedTotalTraffic', 'RequestHash'
:type load_balancing: str or
~azure.mgmt.web.v2016_03_01.models.SiteLoadBalancing
:param experiments: This is work around for polymorphic types.
:type experiments: ~azure.mgmt.web.v2016_03_01.models.Experiments
:param limits: Site limits.
:type limits: ~azure.mgmt.web.v2016_03_01.models.SiteLimits
:param auto_heal_enabled: <code>true</code> if Auto Heal is enabled;
otherwise, <code>false</code>.
:type auto_heal_enabled: bool
:param auto_heal_rules: Auto Heal rules.
:type auto_heal_rules: ~azure.mgmt.web.v2016_03_01.models.AutoHealRules
:param tracing_options: Tracing options.
:type tracing_options: str
:param vnet_name: Virtual Network name.
:type vnet_name: str
:param cors: Cross-Origin Resource Sharing (CORS) settings.
:type cors: ~azure.mgmt.web.v2016_03_01.models.CorsSettings
:param push: Push endpoint settings.
:type push: ~azure.mgmt.web.v2016_03_01.models.PushSettings
:param api_definition: Information about the formal API definition for the
app.
:type api_definition: ~azure.mgmt.web.v2016_03_01.models.ApiDefinitionInfo
:param auto_swap_slot_name: Auto-swap slot name.
:type auto_swap_slot_name: str
:param local_my_sql_enabled: <code>true</code> to enable local MySQL;
otherwise, <code>false</code>. Default value: False .
:type local_my_sql_enabled: bool
:param ip_security_restrictions: IP security restrictions.
:type ip_security_restrictions:
list[~azure.mgmt.web.v2016_03_01.models.IpSecurityRestriction]
:param http20_enabled: Http20Enabled: configures a web site to allow
clients to connect over http2.0. Default value: True .
:type http20_enabled: bool
:param min_tls_version: MinTlsVersion: configures the minimum version of
TLS required for SSL requests. Possible values include: '1.0', '1.1',
'1.2'
:type min_tls_version: str or
~azure.mgmt.web.v2016_03_01.models.SupportedTlsVersions
"""
_validation = {
'machine_key': {'readonly': True},
}
_attribute_map = {
'number_of_workers': {'key': 'numberOfWorkers', 'type': 'int'},
'default_documents': {'key': 'defaultDocuments', 'type': '[str]'},
'net_framework_version': {'key': 'netFrameworkVersion', 'type': 'str'},
'php_version': {'key': 'phpVersion', 'type': 'str'},
'python_version': {'key': 'pythonVersion', 'type': 'str'},
'node_version': {'key': 'nodeVersion', 'type': 'str'},
'linux_fx_version': {'key': 'linuxFxVersion', 'type': 'str'},
'request_tracing_enabled': {'key': 'requestTracingEnabled', 'type': 'bool'},
'request_tracing_expiration_time': {'key': 'requestTracingExpirationTime', 'type': 'iso-8601'},
'remote_debugging_enabled': {'key': 'remoteDebuggingEnabled', 'type': 'bool'},
'remote_debugging_version': {'key': 'remoteDebuggingVersion', 'type': 'str'},
'http_logging_enabled': {'key': 'httpLoggingEnabled', 'type': 'bool'},
'logs_directory_size_limit': {'key': 'logsDirectorySizeLimit', 'type': 'int'},
'detailed_error_logging_enabled': {'key': 'detailedErrorLoggingEnabled', 'type': 'bool'},
'publishing_username': {'key': 'publishingUsername', 'type': 'str'},
'app_settings': {'key': 'appSettings', 'type': '[NameValuePair]'},
'connection_strings': {'key': 'connectionStrings', 'type': '[ConnStringInfo]'},
'machine_key': {'key': 'machineKey', 'type': 'SiteMachineKey'},
'handler_mappings': {'key': 'handlerMappings', 'type': '[HandlerMapping]'},
'document_root': {'key': 'documentRoot', 'type': 'str'},
'scm_type': {'key': 'scmType', 'type': 'str'},
'use32_bit_worker_process': {'key': 'use32BitWorkerProcess', 'type': 'bool'},
'web_sockets_enabled': {'key': 'webSocketsEnabled', 'type': 'bool'},
'always_on': {'key': 'alwaysOn', 'type': 'bool'},
'java_version': {'key': 'javaVersion', 'type': 'str'},
'java_container': {'key': 'javaContainer', 'type': 'str'},
'java_container_version': {'key': 'javaContainerVersion', 'type': 'str'},
'app_command_line': {'key': 'appCommandLine', 'type': 'str'},
'managed_pipeline_mode': {'key': 'managedPipelineMode', 'type': 'ManagedPipelineMode'},
'virtual_applications': {'key': 'virtualApplications', 'type': '[VirtualApplication]'},
'load_balancing': {'key': 'loadBalancing', 'type': 'SiteLoadBalancing'},
'experiments': {'key': 'experiments', 'type': 'Experiments'},
'limits': {'key': 'limits', 'type': 'SiteLimits'},
'auto_heal_enabled': {'key': 'autoHealEnabled', 'type': 'bool'},
'auto_heal_rules': {'key': 'autoHealRules', 'type': 'AutoHealRules'},
'tracing_options': {'key': 'tracingOptions', 'type': 'str'},
'vnet_name': {'key': 'vnetName', 'type': 'str'},
'cors': {'key': 'cors', 'type': 'CorsSettings'},
'push': {'key': 'push', 'type': 'PushSettings'},
'api_definition': {'key': 'apiDefinition', 'type': 'ApiDefinitionInfo'},
'auto_swap_slot_name': {'key': 'autoSwapSlotName', 'type': 'str'},
'local_my_sql_enabled': {'key': 'localMySqlEnabled', 'type': 'bool'},
'ip_security_restrictions': {'key': 'ipSecurityRestrictions', 'type': '[IpSecurityRestriction]'},
'http20_enabled': {'key': 'http20Enabled', 'type': 'bool'},
'min_tls_version': {'key': 'minTlsVersion', 'type': 'str'},
}
def __init__(self, *, number_of_workers: int=None, default_documents=None, net_framework_version: str="v4.6", php_version: str=None, python_version: str=None, node_version: str=None, linux_fx_version: str=None, request_tracing_enabled: bool=None, request_tracing_expiration_time=None, remote_debugging_enabled: bool=None, remote_debugging_version: str=None, http_logging_enabled: bool=None, logs_directory_size_limit: int=None, detailed_error_logging_enabled: bool=None, publishing_username: str=None, app_settings=None, connection_strings=None, handler_mappings=None, document_root: str=None, scm_type=None, use32_bit_worker_process: bool=None, web_sockets_enabled: bool=None, always_on: bool=None, java_version: str=None, java_container: str=None, java_container_version: str=None, app_command_line: str=None, managed_pipeline_mode=None, virtual_applications=None, load_balancing=None, experiments=None, limits=None, auto_heal_enabled: bool=None, auto_heal_rules=None, tracing_options: str=None, vnet_name: str=None, cors=None, push=None, api_definition=None, auto_swap_slot_name: str=None, local_my_sql_enabled: bool=False, ip_security_restrictions=None, http20_enabled: bool=True, min_tls_version=None, **kwargs) -> None:
super(SiteConfig, self).__init__(**kwargs)
self.number_of_workers = number_of_workers
self.default_documents = default_documents
self.net_framework_version = net_framework_version
self.php_version = php_version
self.python_version = python_version
self.node_version = node_version
self.linux_fx_version = linux_fx_version
self.request_tracing_enabled = request_tracing_enabled
self.request_tracing_expiration_time = request_tracing_expiration_time
self.remote_debugging_enabled = remote_debugging_enabled
self.remote_debugging_version = remote_debugging_version
self.http_logging_enabled = http_logging_enabled
self.logs_directory_size_limit = logs_directory_size_limit
self.detailed_error_logging_enabled = detailed_error_logging_enabled
self.publishing_username = publishing_username
self.app_settings = app_settings
self.connection_strings = connection_strings
self.machine_key = None
self.handler_mappings = handler_mappings
self.document_root = document_root
self.scm_type = scm_type
self.use32_bit_worker_process = use32_bit_worker_process
self.web_sockets_enabled = web_sockets_enabled
self.always_on = always_on
self.java_version = java_version
self.java_container = java_container
self.java_container_version = java_container_version
self.app_command_line = app_command_line
self.managed_pipeline_mode = managed_pipeline_mode
self.virtual_applications = virtual_applications
self.load_balancing = load_balancing
self.experiments = experiments
self.limits = limits
self.auto_heal_enabled = auto_heal_enabled
self.auto_heal_rules = auto_heal_rules
self.tracing_options = tracing_options
self.vnet_name = vnet_name
self.cors = cors
self.push = push
self.api_definition = api_definition
self.auto_swap_slot_name = auto_swap_slot_name
self.local_my_sql_enabled = local_my_sql_enabled
self.ip_security_restrictions = ip_security_restrictions
self.http20_enabled = http20_enabled
self.min_tls_version = min_tls_version
[docs]class SiteLimits(Model):
"""Metric limits set on an app.
:param max_percentage_cpu: Maximum allowed CPU usage percentage.
:type max_percentage_cpu: float
:param max_memory_in_mb: Maximum allowed memory usage in MB.
:type max_memory_in_mb: long
:param max_disk_size_in_mb: Maximum allowed disk size usage in MB.
:type max_disk_size_in_mb: long
"""
_attribute_map = {
'max_percentage_cpu': {'key': 'maxPercentageCpu', 'type': 'float'},
'max_memory_in_mb': {'key': 'maxMemoryInMb', 'type': 'long'},
'max_disk_size_in_mb': {'key': 'maxDiskSizeInMb', 'type': 'long'},
}
def __init__(self, *, max_percentage_cpu: float=None, max_memory_in_mb: int=None, max_disk_size_in_mb: int=None, **kwargs) -> None:
super(SiteLimits, self).__init__(**kwargs)
self.max_percentage_cpu = max_percentage_cpu
self.max_memory_in_mb = max_memory_in_mb
self.max_disk_size_in_mb = max_disk_size_in_mb
[docs]class SiteMachineKey(Model):
"""MachineKey of an app.
:param validation: MachineKey validation.
:type validation: str
:param validation_key: Validation key.
:type validation_key: str
:param decryption: Algorithm used for decryption.
:type decryption: str
:param decryption_key: Decryption key.
:type decryption_key: str
"""
_attribute_map = {
'validation': {'key': 'validation', 'type': 'str'},
'validation_key': {'key': 'validationKey', 'type': 'str'},
'decryption': {'key': 'decryption', 'type': 'str'},
'decryption_key': {'key': 'decryptionKey', 'type': 'str'},
}
def __init__(self, *, validation: str=None, validation_key: str=None, decryption: str=None, decryption_key: str=None, **kwargs) -> None:
super(SiteMachineKey, self).__init__(**kwargs)
self.validation = validation
self.validation_key = validation_key
self.decryption = decryption
self.decryption_key = decryption_key
[docs]class SkuCapacity(Model):
"""Description of the App Service plan scale options.
:param minimum: Minimum number of workers for this App Service plan SKU.
:type minimum: int
:param maximum: Maximum number of workers for this App Service plan SKU.
:type maximum: int
:param default: Default number of workers for this App Service plan SKU.
:type default: int
:param scale_type: Available scale configurations for an App Service plan.
:type scale_type: str
"""
_attribute_map = {
'minimum': {'key': 'minimum', 'type': 'int'},
'maximum': {'key': 'maximum', 'type': 'int'},
'default': {'key': 'default', 'type': 'int'},
'scale_type': {'key': 'scaleType', 'type': 'str'},
}
def __init__(self, *, minimum: int=None, maximum: int=None, default: int=None, scale_type: str=None, **kwargs) -> None:
super(SkuCapacity, self).__init__(**kwargs)
self.minimum = minimum
self.maximum = maximum
self.default = default
self.scale_type = scale_type
[docs]class SkuDescription(Model):
"""Description of a SKU for a scalable resource.
:param name: Name of the resource SKU.
:type name: str
:param tier: Service tier of the resource SKU.
:type tier: str
:param size: Size specifier of the resource SKU.
:type size: str
:param family: Family code of the resource SKU.
:type family: str
:param capacity: Current number of instances assigned to the resource.
:type capacity: int
:param sku_capacity: Min, max, and default scale values of the SKU.
:type sku_capacity: ~azure.mgmt.web.v2016_03_01.models.SkuCapacity
:param locations: Locations of the SKU.
:type locations: list[str]
:param capabilities: Capabilities of the SKU, e.g., is traffic manager
enabled?
:type capabilities: list[~azure.mgmt.web.v2016_03_01.models.Capability]
"""
_attribute_map = {
'name': {'key': 'name', 'type': 'str'},
'tier': {'key': 'tier', 'type': 'str'},
'size': {'key': 'size', 'type': 'str'},
'family': {'key': 'family', 'type': 'str'},
'capacity': {'key': 'capacity', 'type': 'int'},
'sku_capacity': {'key': 'skuCapacity', 'type': 'SkuCapacity'},
'locations': {'key': 'locations', 'type': '[str]'},
'capabilities': {'key': 'capabilities', 'type': '[Capability]'},
}
def __init__(self, *, name: str=None, tier: str=None, size: str=None, family: str=None, capacity: int=None, sku_capacity=None, locations=None, capabilities=None, **kwargs) -> None:
super(SkuDescription, self).__init__(**kwargs)
self.name = name
self.tier = tier
self.size = size
self.family = family
self.capacity = capacity
self.sku_capacity = sku_capacity
self.locations = locations
self.capabilities = capabilities
[docs]class SkuInfos(Model):
"""Collection of SKU information.
:param resource_type: Resource type that this SKU applies to.
:type resource_type: str
:param skus: List of SKUs the subscription is able to use.
:type skus:
list[~azure.mgmt.web.v2016_03_01.models.GlobalCsmSkuDescription]
"""
_attribute_map = {
'resource_type': {'key': 'resourceType', 'type': 'str'},
'skus': {'key': 'skus', 'type': '[GlobalCsmSkuDescription]'},
}
def __init__(self, *, resource_type: str=None, skus=None, **kwargs) -> None:
super(SkuInfos, self).__init__(**kwargs)
self.resource_type = resource_type
self.skus = skus
[docs]class SlotSwapStatus(Model):
"""The status of the last successful slot swap operation.
Variables are only populated by the server, and will be ignored when
sending a request.
:ivar timestamp_utc: The time the last successful slot swap completed.
:vartype timestamp_utc: datetime
:ivar source_slot_name: The source slot of the last swap operation.
:vartype source_slot_name: str
:ivar destination_slot_name: The destination slot of the last swap
operation.
:vartype destination_slot_name: str
"""
_validation = {
'timestamp_utc': {'readonly': True},
'source_slot_name': {'readonly': True},
'destination_slot_name': {'readonly': True},
}
_attribute_map = {
'timestamp_utc': {'key': 'timestampUtc', 'type': 'iso-8601'},
'source_slot_name': {'key': 'sourceSlotName', 'type': 'str'},
'destination_slot_name': {'key': 'destinationSlotName', 'type': 'str'},
}
def __init__(self, **kwargs) -> None:
super(SlotSwapStatus, self).__init__(**kwargs)
self.timestamp_utc = None
self.source_slot_name = None
self.destination_slot_name = None
[docs]class SlowRequestsBasedTrigger(Model):
"""Trigger based on request execution time.
:param time_taken: Time taken.
:type time_taken: str
:param count: Request Count.
:type count: int
:param time_interval: Time interval.
:type time_interval: str
"""
_attribute_map = {
'time_taken': {'key': 'timeTaken', 'type': 'str'},
'count': {'key': 'count', 'type': 'int'},
'time_interval': {'key': 'timeInterval', 'type': 'str'},
}
def __init__(self, *, time_taken: str=None, count: int=None, time_interval: str=None, **kwargs) -> None:
super(SlowRequestsBasedTrigger, self).__init__(**kwargs)
self.time_taken = time_taken
self.count = count
self.time_interval = time_interval
[docs]class SnapshotRecoveryRequest(ProxyOnlyResource):
"""Details about app recovery operation.
Variables are only populated by the server, and will be ignored when
sending a request.
All required parameters must be populated in order to send to Azure.
:ivar id: Resource Id.
:vartype id: str
:ivar name: Resource Name.
:vartype name: str
:param kind: Kind of resource.
:type kind: str
:ivar type: Resource type.
:vartype type: str
:param snapshot_time: Point in time in which the app recovery should be
attempted, formatted as a DateTime string.
:type snapshot_time: str
:param recovery_target: Specifies the web app that snapshot contents will
be written to.
:type recovery_target:
~azure.mgmt.web.v2016_03_01.models.SnapshotRecoveryTarget
:param overwrite: Required. If <code>true</code> the recovery operation
can overwrite source app; otherwise, <code>false</code>.
:type overwrite: bool
:param recover_configuration: If true, site configuration, in addition to
content, will be reverted.
:type recover_configuration: bool
:param ignore_conflicting_host_names: If true, custom hostname conflicts
will be ignored when recovering to a target web app.
This setting is only necessary when RecoverConfiguration is enabled.
:type ignore_conflicting_host_names: bool
"""
_validation = {
'id': {'readonly': True},
'name': {'readonly': True},
'type': {'readonly': True},
'overwrite': {'required': True},
}
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'kind': {'key': 'kind', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
'snapshot_time': {'key': 'properties.snapshotTime', 'type': 'str'},
'recovery_target': {'key': 'properties.recoveryTarget', 'type': 'SnapshotRecoveryTarget'},
'overwrite': {'key': 'properties.overwrite', 'type': 'bool'},
'recover_configuration': {'key': 'properties.recoverConfiguration', 'type': 'bool'},
'ignore_conflicting_host_names': {'key': 'properties.ignoreConflictingHostNames', 'type': 'bool'},
}
def __init__(self, *, overwrite: bool, kind: str=None, snapshot_time: str=None, recovery_target=None, recover_configuration: bool=None, ignore_conflicting_host_names: bool=None, **kwargs) -> None:
super(SnapshotRecoveryRequest, self).__init__(kind=kind, **kwargs)
self.snapshot_time = snapshot_time
self.recovery_target = recovery_target
self.overwrite = overwrite
self.recover_configuration = recover_configuration
self.ignore_conflicting_host_names = ignore_conflicting_host_names
[docs]class SnapshotRecoveryTarget(Model):
"""Specifies the web app that snapshot contents will be written to.
:param location: Geographical location of the target web app, e.g.
SouthEastAsia, SouthCentralUS
:type location: str
:param id: ARM resource ID of the target app.
/subscriptions/{subId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}
for production slots and
/subscriptions/{subId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{siteName}/slots/{slotName}
for other slots.
:type id: str
"""
_attribute_map = {
'location': {'key': 'location', 'type': 'str'},
'id': {'key': 'id', 'type': 'str'},
}
def __init__(self, *, location: str=None, id: str=None, **kwargs) -> None:
super(SnapshotRecoveryTarget, self).__init__(**kwargs)
self.location = location
self.id = id
[docs]class Solution(Model):
"""Class Representing Solution for problems detected.
:param id: Solution Id.
:type id: float
:param display_name: Display Name of the solution
:type display_name: str
:param order: Order of the solution.
:type order: float
:param description: Description of the solution
:type description: str
:param type: Type of Solution. Possible values include: 'QuickSolution',
'DeepInvestigation', 'BestPractices'
:type type: str or ~azure.mgmt.web.v2016_03_01.models.SolutionType
:param data: Solution Data.
:type data: list[list[~azure.mgmt.web.v2016_03_01.models.NameValuePair]]
:param metadata: Solution Metadata.
:type metadata:
list[list[~azure.mgmt.web.v2016_03_01.models.NameValuePair]]
"""
_attribute_map = {
'id': {'key': 'id', 'type': 'float'},
'display_name': {'key': 'displayName', 'type': 'str'},
'order': {'key': 'order', 'type': 'float'},
'description': {'key': 'description', 'type': 'str'},
'type': {'key': 'type', 'type': 'SolutionType'},
'data': {'key': 'data', 'type': '[[NameValuePair]]'},
'metadata': {'key': 'metadata', 'type': '[[NameValuePair]]'},
}
def __init__(self, *, id: float=None, display_name: str=None, order: float=None, description: str=None, type=None, data=None, metadata=None, **kwargs) -> None:
super(Solution, self).__init__(**kwargs)
self.id = id
self.display_name = display_name
self.order = order
self.description = description
self.type = type
self.data = data
self.metadata = metadata
[docs]class SourceControl(ProxyOnlyResource):
"""The source control OAuth token.
Variables are only populated by the server, and will be ignored when
sending a request.
:ivar id: Resource Id.
:vartype id: str
:ivar name: Resource Name.
:vartype name: str
:param kind: Kind of resource.
:type kind: str
:ivar type: Resource type.
:vartype type: str
:param source_control_name: Name or source control type.
:type source_control_name: str
:param token: OAuth access token.
:type token: str
:param token_secret: OAuth access token secret.
:type token_secret: str
:param refresh_token: OAuth refresh token.
:type refresh_token: str
:param expiration_time: OAuth token expiration.
:type expiration_time: datetime
"""
_validation = {
'id': {'readonly': True},
'name': {'readonly': True},
'type': {'readonly': True},
}
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'kind': {'key': 'kind', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
'source_control_name': {'key': 'properties.name', 'type': 'str'},
'token': {'key': 'properties.token', 'type': 'str'},
'token_secret': {'key': 'properties.tokenSecret', 'type': 'str'},
'refresh_token': {'key': 'properties.refreshToken', 'type': 'str'},
'expiration_time': {'key': 'properties.expirationTime', 'type': 'iso-8601'},
}
def __init__(self, *, kind: str=None, source_control_name: str=None, token: str=None, token_secret: str=None, refresh_token: str=None, expiration_time=None, **kwargs) -> None:
super(SourceControl, self).__init__(kind=kind, **kwargs)
self.source_control_name = source_control_name
self.token = token
self.token_secret = token_secret
self.refresh_token = refresh_token
self.expiration_time = expiration_time
[docs]class StackMajorVersion(Model):
"""Application stack major version.
:param display_version: Application stack major version (display only).
:type display_version: str
:param runtime_version: Application stack major version (runtime only).
:type runtime_version: str
:param is_default: <code>true</code> if this is the default major version;
otherwise, <code>false</code>.
:type is_default: bool
:param minor_versions: Minor versions associated with the major version.
:type minor_versions:
list[~azure.mgmt.web.v2016_03_01.models.StackMinorVersion]
"""
_attribute_map = {
'display_version': {'key': 'displayVersion', 'type': 'str'},
'runtime_version': {'key': 'runtimeVersion', 'type': 'str'},
'is_default': {'key': 'isDefault', 'type': 'bool'},
'minor_versions': {'key': 'minorVersions', 'type': '[StackMinorVersion]'},
}
def __init__(self, *, display_version: str=None, runtime_version: str=None, is_default: bool=None, minor_versions=None, **kwargs) -> None:
super(StackMajorVersion, self).__init__(**kwargs)
self.display_version = display_version
self.runtime_version = runtime_version
self.is_default = is_default
self.minor_versions = minor_versions
[docs]class StackMinorVersion(Model):
"""Application stack minor version.
:param display_version: Application stack minor version (display only).
:type display_version: str
:param runtime_version: Application stack minor version (runtime only).
:type runtime_version: str
:param is_default: <code>true</code> if this is the default minor version;
otherwise, <code>false</code>.
:type is_default: bool
"""
_attribute_map = {
'display_version': {'key': 'displayVersion', 'type': 'str'},
'runtime_version': {'key': 'runtimeVersion', 'type': 'str'},
'is_default': {'key': 'isDefault', 'type': 'bool'},
}
def __init__(self, *, display_version: str=None, runtime_version: str=None, is_default: bool=None, **kwargs) -> None:
super(StackMinorVersion, self).__init__(**kwargs)
self.display_version = display_version
self.runtime_version = runtime_version
self.is_default = is_default
[docs]class StampCapacity(Model):
"""Stamp capacity information.
:param name: Name of the stamp.
:type name: str
:param available_capacity: Available capacity (# of machines, bytes of
storage etc...).
:type available_capacity: long
:param total_capacity: Total capacity (# of machines, bytes of storage
etc...).
:type total_capacity: long
:param unit: Name of the unit.
:type unit: str
:param compute_mode: Shared/dedicated workers. Possible values include:
'Shared', 'Dedicated', 'Dynamic'
:type compute_mode: str or
~azure.mgmt.web.v2016_03_01.models.ComputeModeOptions
:param worker_size: Size of the machines. Possible values include:
'Default', 'Small', 'Medium', 'Large', 'D1', 'D2', 'D3'
:type worker_size: str or
~azure.mgmt.web.v2016_03_01.models.WorkerSizeOptions
:param worker_size_id: Size ID of machines:
0 - Small
1 - Medium
2 - Large
:type worker_size_id: int
:param exclude_from_capacity_allocation: If <code>true</code>, it includes
basic apps.
Basic apps are not used for capacity allocation.
:type exclude_from_capacity_allocation: bool
:param is_applicable_for_all_compute_modes: <code>true</code> if capacity
is applicable for all apps; otherwise, <code>false</code>.
:type is_applicable_for_all_compute_modes: bool
:param site_mode: Shared or Dedicated.
:type site_mode: str
"""
_attribute_map = {
'name': {'key': 'name', 'type': 'str'},
'available_capacity': {'key': 'availableCapacity', 'type': 'long'},
'total_capacity': {'key': 'totalCapacity', 'type': 'long'},
'unit': {'key': 'unit', 'type': 'str'},
'compute_mode': {'key': 'computeMode', 'type': 'ComputeModeOptions'},
'worker_size': {'key': 'workerSize', 'type': 'WorkerSizeOptions'},
'worker_size_id': {'key': 'workerSizeId', 'type': 'int'},
'exclude_from_capacity_allocation': {'key': 'excludeFromCapacityAllocation', 'type': 'bool'},
'is_applicable_for_all_compute_modes': {'key': 'isApplicableForAllComputeModes', 'type': 'bool'},
'site_mode': {'key': 'siteMode', 'type': 'str'},
}
def __init__(self, *, name: str=None, available_capacity: int=None, total_capacity: int=None, unit: str=None, compute_mode=None, worker_size=None, worker_size_id: int=None, exclude_from_capacity_allocation: bool=None, is_applicable_for_all_compute_modes: bool=None, site_mode: str=None, **kwargs) -> None:
super(StampCapacity, self).__init__(**kwargs)
self.name = name
self.available_capacity = available_capacity
self.total_capacity = total_capacity
self.unit = unit
self.compute_mode = compute_mode
self.worker_size = worker_size
self.worker_size_id = worker_size_id
self.exclude_from_capacity_allocation = exclude_from_capacity_allocation
self.is_applicable_for_all_compute_modes = is_applicable_for_all_compute_modes
self.site_mode = site_mode
[docs]class StatusCodesBasedTrigger(Model):
"""Trigger based on status code.
:param status: HTTP status code.
:type status: int
:param sub_status: Request Sub Status.
:type sub_status: int
:param win32_status: Win32 error code.
:type win32_status: int
:param count: Request Count.
:type count: int
:param time_interval: Time interval.
:type time_interval: str
"""
_attribute_map = {
'status': {'key': 'status', 'type': 'int'},
'sub_status': {'key': 'subStatus', 'type': 'int'},
'win32_status': {'key': 'win32Status', 'type': 'int'},
'count': {'key': 'count', 'type': 'int'},
'time_interval': {'key': 'timeInterval', 'type': 'str'},
}
def __init__(self, *, status: int=None, sub_status: int=None, win32_status: int=None, count: int=None, time_interval: str=None, **kwargs) -> None:
super(StatusCodesBasedTrigger, self).__init__(**kwargs)
self.status = status
self.sub_status = sub_status
self.win32_status = win32_status
self.count = count
self.time_interval = time_interval
[docs]class User(ProxyOnlyResource):
"""User credentials used for publishing activity.
Variables are only populated by the server, and will be ignored when
sending a request.
All required parameters must be populated in order to send to Azure.
:ivar id: Resource Id.
:vartype id: str
:ivar name: Resource Name.
:vartype name: str
:param kind: Kind of resource.
:type kind: str
:ivar type: Resource type.
:vartype type: str
:param user_name: Username
:type user_name: str
:param publishing_user_name: Required. Username used for publishing.
:type publishing_user_name: str
:param publishing_password: Password used for publishing.
:type publishing_password: str
:param publishing_password_hash: Password hash used for publishing.
:type publishing_password_hash: str
:param publishing_password_hash_salt: Password hash salt used for
publishing.
:type publishing_password_hash_salt: str
"""
_validation = {
'id': {'readonly': True},
'name': {'readonly': True},
'type': {'readonly': True},
'publishing_user_name': {'required': True},
}
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'kind': {'key': 'kind', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
'user_name': {'key': 'properties.name', 'type': 'str'},
'publishing_user_name': {'key': 'properties.publishingUserName', 'type': 'str'},
'publishing_password': {'key': 'properties.publishingPassword', 'type': 'str'},
'publishing_password_hash': {'key': 'properties.publishingPasswordHash', 'type': 'str'},
'publishing_password_hash_salt': {'key': 'properties.publishingPasswordHashSalt', 'type': 'str'},
}
def __init__(self, *, publishing_user_name: str, kind: str=None, user_name: str=None, publishing_password: str=None, publishing_password_hash: str=None, publishing_password_hash_salt: str=None, **kwargs) -> None:
super(User, self).__init__(kind=kind, **kwargs)
self.user_name = user_name
self.publishing_user_name = publishing_user_name
self.publishing_password = publishing_password
self.publishing_password_hash = publishing_password_hash
self.publishing_password_hash_salt = publishing_password_hash_salt
[docs]class ValidateRequest(Model):
"""Resource validation request content.
All required parameters must be populated in order to send to Azure.
:param name: Required. Resource name to verify.
:type name: str
:param type: Required. Resource type used for verification. Possible
values include: 'ServerFarm', 'Site'
:type type: str or
~azure.mgmt.web.v2016_03_01.models.ValidateResourceTypes
:param location: Required. Expected location of the resource.
:type location: str
:param server_farm_id: ARM resource ID of an App Service plan that would
host the app.
:type server_farm_id: str
:param sku_name: Name of the target SKU for the App Service plan.
:type sku_name: str
:param need_linux_workers: <code>true</code> if App Service plan is for
Linux workers; otherwise, <code>false</code>.
:type need_linux_workers: bool
:param is_spot: <code>true</code> if App Service plan is for Spot
instances; otherwise, <code>false</code>.
:type is_spot: bool
:param capacity: Target capacity of the App Service plan (number of VMs).
:type capacity: int
:param hosting_environment: Name of App Service Environment where app or
App Service plan should be created.
:type hosting_environment: str
"""
_validation = {
'name': {'required': True},
'type': {'required': True},
'location': {'required': True},
'capacity': {'minimum': 1},
}
_attribute_map = {
'name': {'key': 'name', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
'location': {'key': 'location', 'type': 'str'},
'server_farm_id': {'key': 'properties.serverFarmId', 'type': 'str'},
'sku_name': {'key': 'properties.skuName', 'type': 'str'},
'need_linux_workers': {'key': 'properties.needLinuxWorkers', 'type': 'bool'},
'is_spot': {'key': 'properties.isSpot', 'type': 'bool'},
'capacity': {'key': 'properties.capacity', 'type': 'int'},
'hosting_environment': {'key': 'properties.hostingEnvironment', 'type': 'str'},
}
def __init__(self, *, name: str, type, location: str, server_farm_id: str=None, sku_name: str=None, need_linux_workers: bool=None, is_spot: bool=None, capacity: int=None, hosting_environment: str=None, **kwargs) -> None:
super(ValidateRequest, self).__init__(**kwargs)
self.name = name
self.type = type
self.location = location
self.server_farm_id = server_farm_id
self.sku_name = sku_name
self.need_linux_workers = need_linux_workers
self.is_spot = is_spot
self.capacity = capacity
self.hosting_environment = hosting_environment
[docs]class ValidateResponse(Model):
"""Describes the result of resource validation.
:param status: Result of validation.
:type status: str
:param error: Error details for the case when validation fails.
:type error: ~azure.mgmt.web.v2016_03_01.models.ValidateResponseError
"""
_attribute_map = {
'status': {'key': 'status', 'type': 'str'},
'error': {'key': 'error', 'type': 'ValidateResponseError'},
}
def __init__(self, *, status: str=None, error=None, **kwargs) -> None:
super(ValidateResponse, self).__init__(**kwargs)
self.status = status
self.error = error
[docs]class ValidateResponseError(Model):
"""Error details for when validation fails.
:param code: Validation error code.
:type code: str
:param message: Validation error message.
:type message: str
"""
_attribute_map = {
'code': {'key': 'code', 'type': 'str'},
'message': {'key': 'message', 'type': 'str'},
}
def __init__(self, *, code: str=None, message: str=None, **kwargs) -> None:
super(ValidateResponseError, self).__init__(**kwargs)
self.code = code
self.message = message
[docs]class VirtualApplication(Model):
"""Virtual application in an app.
:param virtual_path: Virtual path.
:type virtual_path: str
:param physical_path: Physical path.
:type physical_path: str
:param preload_enabled: <code>true</code> if preloading is enabled;
otherwise, <code>false</code>.
:type preload_enabled: bool
:param virtual_directories: Virtual directories for virtual application.
:type virtual_directories:
list[~azure.mgmt.web.v2016_03_01.models.VirtualDirectory]
"""
_attribute_map = {
'virtual_path': {'key': 'virtualPath', 'type': 'str'},
'physical_path': {'key': 'physicalPath', 'type': 'str'},
'preload_enabled': {'key': 'preloadEnabled', 'type': 'bool'},
'virtual_directories': {'key': 'virtualDirectories', 'type': '[VirtualDirectory]'},
}
def __init__(self, *, virtual_path: str=None, physical_path: str=None, preload_enabled: bool=None, virtual_directories=None, **kwargs) -> None:
super(VirtualApplication, self).__init__(**kwargs)
self.virtual_path = virtual_path
self.physical_path = physical_path
self.preload_enabled = preload_enabled
self.virtual_directories = virtual_directories
[docs]class VirtualDirectory(Model):
"""Directory for virtual application.
:param virtual_path: Path to virtual application.
:type virtual_path: str
:param physical_path: Physical path.
:type physical_path: str
"""
_attribute_map = {
'virtual_path': {'key': 'virtualPath', 'type': 'str'},
'physical_path': {'key': 'physicalPath', 'type': 'str'},
}
def __init__(self, *, virtual_path: str=None, physical_path: str=None, **kwargs) -> None:
super(VirtualDirectory, self).__init__(**kwargs)
self.virtual_path = virtual_path
self.physical_path = physical_path
[docs]class VirtualIPMapping(Model):
"""Virtual IP mapping.
:param virtual_ip: Virtual IP address.
:type virtual_ip: str
:param internal_http_port: Internal HTTP port.
:type internal_http_port: int
:param internal_https_port: Internal HTTPS port.
:type internal_https_port: int
:param in_use: Is virtual IP mapping in use.
:type in_use: bool
"""
_attribute_map = {
'virtual_ip': {'key': 'virtualIP', 'type': 'str'},
'internal_http_port': {'key': 'internalHttpPort', 'type': 'int'},
'internal_https_port': {'key': 'internalHttpsPort', 'type': 'int'},
'in_use': {'key': 'inUse', 'type': 'bool'},
}
def __init__(self, *, virtual_ip: str=None, internal_http_port: int=None, internal_https_port: int=None, in_use: bool=None, **kwargs) -> None:
super(VirtualIPMapping, self).__init__(**kwargs)
self.virtual_ip = virtual_ip
self.internal_http_port = internal_http_port
self.internal_https_port = internal_https_port
self.in_use = in_use
[docs]class VirtualNetworkProfile(Model):
"""Specification for using a Virtual Network.
Variables are only populated by the server, and will be ignored when
sending a request.
:param id: Resource id of the Virtual Network.
:type id: str
:ivar name: Name of the Virtual Network (read-only).
:vartype name: str
:ivar type: Resource type of the Virtual Network (read-only).
:vartype type: str
:param subnet: Subnet within the Virtual Network.
:type subnet: str
"""
_validation = {
'name': {'readonly': True},
'type': {'readonly': True},
}
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
'subnet': {'key': 'subnet', 'type': 'str'},
}
def __init__(self, *, id: str=None, subnet: str=None, **kwargs) -> None:
super(VirtualNetworkProfile, self).__init__(**kwargs)
self.id = id
self.name = None
self.type = None
self.subnet = subnet
[docs]class VnetGateway(ProxyOnlyResource):
"""The Virtual Network gateway contract. This is used to give the Virtual
Network gateway access to the VPN package.
Variables are only populated by the server, and will be ignored when
sending a request.
All required parameters must be populated in order to send to Azure.
:ivar id: Resource Id.
:vartype id: str
:ivar name: Resource Name.
:vartype name: str
:param kind: Kind of resource.
:type kind: str
:ivar type: Resource type.
:vartype type: str
:param vnet_name: The Virtual Network name.
:type vnet_name: str
:param vpn_package_uri: Required. The URI where the VPN package can be
downloaded.
:type vpn_package_uri: str
"""
_validation = {
'id': {'readonly': True},
'name': {'readonly': True},
'type': {'readonly': True},
'vpn_package_uri': {'required': True},
}
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'kind': {'key': 'kind', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
'vnet_name': {'key': 'properties.vnetName', 'type': 'str'},
'vpn_package_uri': {'key': 'properties.vpnPackageUri', 'type': 'str'},
}
def __init__(self, *, vpn_package_uri: str, kind: str=None, vnet_name: str=None, **kwargs) -> None:
super(VnetGateway, self).__init__(kind=kind, **kwargs)
self.vnet_name = vnet_name
self.vpn_package_uri = vpn_package_uri
[docs]class VnetInfo(ProxyOnlyResource):
"""Virtual Network information contract.
Variables are only populated by the server, and will be ignored when
sending a request.
:ivar id: Resource Id.
:vartype id: str
:ivar name: Resource Name.
:vartype name: str
:param kind: Kind of resource.
:type kind: str
:ivar type: Resource type.
:vartype type: str
:param vnet_resource_id: The Virtual Network's resource ID.
:type vnet_resource_id: str
:ivar cert_thumbprint: The client certificate thumbprint.
:vartype cert_thumbprint: str
:param cert_blob: A certificate file (.cer) blob containing the public key
of the private key used to authenticate a
Point-To-Site VPN connection.
:type cert_blob: bytearray
:ivar routes: The routes that this Virtual Network connection uses.
:vartype routes: list[~azure.mgmt.web.v2016_03_01.models.VnetRoute]
:ivar resync_required: <code>true</code> if a resync is required;
otherwise, <code>false</code>.
:vartype resync_required: bool
:param dns_servers: DNS servers to be used by this Virtual Network. This
should be a comma-separated list of IP addresses.
:type dns_servers: str
"""
_validation = {
'id': {'readonly': True},
'name': {'readonly': True},
'type': {'readonly': True},
'cert_thumbprint': {'readonly': True},
'routes': {'readonly': True},
'resync_required': {'readonly': True},
}
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'kind': {'key': 'kind', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
'vnet_resource_id': {'key': 'properties.vnetResourceId', 'type': 'str'},
'cert_thumbprint': {'key': 'properties.certThumbprint', 'type': 'str'},
'cert_blob': {'key': 'properties.certBlob', 'type': 'bytearray'},
'routes': {'key': 'properties.routes', 'type': '[VnetRoute]'},
'resync_required': {'key': 'properties.resyncRequired', 'type': 'bool'},
'dns_servers': {'key': 'properties.dnsServers', 'type': 'str'},
}
def __init__(self, *, kind: str=None, vnet_resource_id: str=None, cert_blob: bytearray=None, dns_servers: str=None, **kwargs) -> None:
super(VnetInfo, self).__init__(kind=kind, **kwargs)
self.vnet_resource_id = vnet_resource_id
self.cert_thumbprint = None
self.cert_blob = cert_blob
self.routes = None
self.resync_required = None
self.dns_servers = dns_servers
[docs]class VnetParameters(ProxyOnlyResource):
"""The required set of inputs to validate a VNET.
Variables are only populated by the server, and will be ignored when
sending a request.
:ivar id: Resource Id.
:vartype id: str
:ivar name: Resource Name.
:vartype name: str
:param kind: Kind of resource.
:type kind: str
:ivar type: Resource type.
:vartype type: str
:param vnet_resource_group: The Resource Group of the VNET to be validated
:type vnet_resource_group: str
:param vnet_name: The name of the VNET to be validated
:type vnet_name: str
:param vnet_subnet_name: The subnet name to be validated
:type vnet_subnet_name: str
"""
_validation = {
'id': {'readonly': True},
'name': {'readonly': True},
'type': {'readonly': True},
}
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'kind': {'key': 'kind', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
'vnet_resource_group': {'key': 'properties.vnetResourceGroup', 'type': 'str'},
'vnet_name': {'key': 'properties.vnetName', 'type': 'str'},
'vnet_subnet_name': {'key': 'properties.vnetSubnetName', 'type': 'str'},
}
def __init__(self, *, kind: str=None, vnet_resource_group: str=None, vnet_name: str=None, vnet_subnet_name: str=None, **kwargs) -> None:
super(VnetParameters, self).__init__(kind=kind, **kwargs)
self.vnet_resource_group = vnet_resource_group
self.vnet_name = vnet_name
self.vnet_subnet_name = vnet_subnet_name
[docs]class VnetRoute(ProxyOnlyResource):
"""Virtual Network route contract used to pass routing information for a
Virtual Network.
Variables are only populated by the server, and will be ignored when
sending a request.
:ivar id: Resource Id.
:vartype id: str
:ivar name: Resource Name.
:vartype name: str
:param kind: Kind of resource.
:type kind: str
:ivar type: Resource type.
:vartype type: str
:param vnet_route_name: The name of this route. This is only returned by
the server and does not need to be set by the client.
:type vnet_route_name: str
:param start_address: The starting address for this route. This may also
include a CIDR notation, in which case the end address must not be
specified.
:type start_address: str
:param end_address: The ending address for this route. If the start
address is specified in CIDR notation, this must be omitted.
:type end_address: str
:param route_type: The type of route this is:
DEFAULT - By default, every app has routes to the local address ranges
specified by RFC1918
INHERITED - Routes inherited from the real Virtual Network routes
STATIC - Static route set on the app only
These values will be used for syncing an app's routes with those from a
Virtual Network. Possible values include: 'DEFAULT', 'INHERITED', 'STATIC'
:type route_type: str or ~azure.mgmt.web.v2016_03_01.models.RouteType
"""
_validation = {
'id': {'readonly': True},
'name': {'readonly': True},
'type': {'readonly': True},
}
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'kind': {'key': 'kind', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
'vnet_route_name': {'key': 'properties.name', 'type': 'str'},
'start_address': {'key': 'properties.startAddress', 'type': 'str'},
'end_address': {'key': 'properties.endAddress', 'type': 'str'},
'route_type': {'key': 'properties.routeType', 'type': 'str'},
}
def __init__(self, *, kind: str=None, vnet_route_name: str=None, start_address: str=None, end_address: str=None, route_type=None, **kwargs) -> None:
super(VnetRoute, self).__init__(kind=kind, **kwargs)
self.vnet_route_name = vnet_route_name
self.start_address = start_address
self.end_address = end_address
self.route_type = route_type
[docs]class VnetValidationFailureDetails(ProxyOnlyResource):
"""A class that describes the reason for a validation failure.
Variables are only populated by the server, and will be ignored when
sending a request.
:ivar id: Resource Id.
:vartype id: str
:ivar name: Resource Name.
:vartype name: str
:param kind: Kind of resource.
:type kind: str
:ivar type: Resource type.
:vartype type: str
:param failed: A flag describing whether or not validation failed.
:type failed: bool
:param failed_tests: A list of tests that failed in the validation.
:type failed_tests:
list[~azure.mgmt.web.v2016_03_01.models.VnetValidationTestFailure]
"""
_validation = {
'id': {'readonly': True},
'name': {'readonly': True},
'type': {'readonly': True},
}
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'kind': {'key': 'kind', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
'failed': {'key': 'properties.failed', 'type': 'bool'},
'failed_tests': {'key': 'properties.failedTests', 'type': '[VnetValidationTestFailure]'},
}
def __init__(self, *, kind: str=None, failed: bool=None, failed_tests=None, **kwargs) -> None:
super(VnetValidationFailureDetails, self).__init__(kind=kind, **kwargs)
self.failed = failed
self.failed_tests = failed_tests
[docs]class VnetValidationTestFailure(ProxyOnlyResource):
"""A class that describes a test that failed during NSG and UDR validation.
Variables are only populated by the server, and will be ignored when
sending a request.
:ivar id: Resource Id.
:vartype id: str
:ivar name: Resource Name.
:vartype name: str
:param kind: Kind of resource.
:type kind: str
:ivar type: Resource type.
:vartype type: str
:param test_name: The name of the test that failed.
:type test_name: str
:param details: The details of what caused the failure, e.g. the blocking
rule name, etc.
:type details: str
"""
_validation = {
'id': {'readonly': True},
'name': {'readonly': True},
'type': {'readonly': True},
}
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'kind': {'key': 'kind', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
'test_name': {'key': 'properties.testName', 'type': 'str'},
'details': {'key': 'properties.details', 'type': 'str'},
}
def __init__(self, *, kind: str=None, test_name: str=None, details: str=None, **kwargs) -> None:
super(VnetValidationTestFailure, self).__init__(kind=kind, **kwargs)
self.test_name = test_name
self.details = details
[docs]class WebAppCollection(Model):
"""Collection of App Service apps.
Variables are only populated by the server, and will be ignored when
sending a request.
All required parameters must be populated in order to send to Azure.
:param value: Required. Collection of resources.
:type value: list[~azure.mgmt.web.v2016_03_01.models.Site]
:ivar next_link: Link to next page of resources.
:vartype next_link: str
"""
_validation = {
'value': {'required': True},
'next_link': {'readonly': True},
}
_attribute_map = {
'value': {'key': 'value', 'type': '[Site]'},
'next_link': {'key': 'nextLink', 'type': 'str'},
}
def __init__(self, *, value, **kwargs) -> None:
super(WebAppCollection, self).__init__(**kwargs)
self.value = value
self.next_link = None
[docs]class WorkerPool(Model):
"""Worker pool of an App Service Environment.
Variables are only populated by the server, and will be ignored when
sending a request.
:param worker_size_id: Worker size ID for referencing this worker pool.
:type worker_size_id: int
:param compute_mode: Shared or dedicated app hosting. Possible values
include: 'Shared', 'Dedicated', 'Dynamic'
:type compute_mode: str or
~azure.mgmt.web.v2016_03_01.models.ComputeModeOptions
:param worker_size: VM size of the worker pool instances.
:type worker_size: str
:param worker_count: Number of instances in the worker pool.
:type worker_count: int
:ivar instance_names: Names of all instances in the worker pool (read
only).
:vartype instance_names: list[str]
"""
_validation = {
'instance_names': {'readonly': True},
}
_attribute_map = {
'worker_size_id': {'key': 'workerSizeId', 'type': 'int'},
'compute_mode': {'key': 'computeMode', 'type': 'ComputeModeOptions'},
'worker_size': {'key': 'workerSize', 'type': 'str'},
'worker_count': {'key': 'workerCount', 'type': 'int'},
'instance_names': {'key': 'instanceNames', 'type': '[str]'},
}
def __init__(self, *, worker_size_id: int=None, compute_mode=None, worker_size: str=None, worker_count: int=None, **kwargs) -> None:
super(WorkerPool, self).__init__(**kwargs)
self.worker_size_id = worker_size_id
self.compute_mode = compute_mode
self.worker_size = worker_size
self.worker_count = worker_count
self.instance_names = None